原因
更新了MacOS Monterey后发现apache 使用出了一些问题,查询后发现系统自带的php已经被移除了。对我来说之前习惯使用 apache服务器配置一些 html 、json 文件做联调带来了一些不方便,下面列举一些我发现的一些代替方案。
使用homebrew配置apache 和 php
配置完成后:
#开启
$ brew services restart httpd
#关闭
$ brew services stop httpd
#查看状态
$ brew services list
我这边配置完成后,就能像之前一样正常使用了,但是后续使用发现一直出现异常,如下图。
出现异常因为对apache不太熟悉,所以后续也没有继续处理这个问题,就不使用这种方案了,如果有人知道是什么问题可以留言告诉我,谢谢。
使用Python3
Python3的安装这里就不重复了,没有安装的同学可以自行安装。
安装好之后只要cd到对应的文件夹,使用下面的命令就可以开启,非常方便。
$ python3 -m http.server
使用 Vapor
Vapor 是基于 Swift 实现的 Web 框架与服务,可运行于 macOS 和 Ubuntu 系统上。
既然是一个web框架,开启一个http服务器查看文件当然是杀鸡用牛刀了。因为是swift 实现的,所以对iOS开发来说是一个很好的通过掌握的语言去学习整套服务器开发的一个突破口。
因为我也是开始学习,这里就简单得说一下我掌握了开启一个http服务器然后共享文件夹里面文件的流程。
因为 Vapor 4 需要 Swift 5.2(或以上) 版本,所以需要先安装 Xcode 11.4(或以上)。
首先是通过 homebrew 安装 Toolbox:
$ brew install vapor/tap/vapor
安装完之后:
$ vapor -h
可以确认是否安装成功
结果通过 vapor 命令行工具创建项目,项目名称命名为 HttpTest。
$ vapor new HttpTest -branch=4
创建成功后 cd到对应文件夹,然后输入
$ vapor build
等到build成功后输入
$ vapor run
这时候就可以看到服务器已经跑起来了,浏览器输入http://127.0.0.1:8080 可以查看。
我们的目标是能通过服务器共享文件,所以还需要修改一些东西。输入命令:
$ vapor xcode
会自动生成一个完整的 Xcode 项目,然后去到 configure.swift 文件, 可以看到打开 app.middleware.use 那行注释可以共享app.directory.publicDirectory 这个路径下的文件。不过我们也可以共享其他路径下的文件,所以我输入了我当前需要共享的路径在下面一行("/Users/xxx/Sites"改为你想共享的路径即可)
// configures your application
public func configure(_ app: Application) throws {
// uncomment to serve files from /Public folder
// app.middleware.use(FileMiddleware(publicDirectory: app.directory.publicDirectory))
app.middleware.use(FileMiddleware(publicDirectory: "/Users/xxx/Sites"))
......
}
然后点击Xcode的run 按钮,或者输入 vapor run 命令,你就可以在浏览器输入对应的文件路径去访问了,例如/Users/xxx/Sites 下有一个sample.pdf 文件,这时候路径是http://127.0.0.1:8080/sample.pdf
上面是一个简单的共享文件举例,有精力的话可以尝试去把浏览的页面也实现出来。
网友评论