从macOS 10.13起,由于macOS的Safari遵循了web标准所给出的一些所谓安全行为,我们直接在本地打开html网页时将无法直接通过JavaScript脚本获得本地资源。因此,我们必须在本地开启服务器才能有效获取本地资源,同时还能访问localStorage等本地持久化存储的对象。
幸亏,macOS已经预装了Apache服务器,甚至还有PHP。因此我们可以直接采用sudo apachectl start
命令来开启Apache服务器。当开启了Apache服务器之后,我们直接在Safari浏览器中输入localhost/
即可连上。比如,如果我们要访问根目录的index.html
,我们可以直接在浏览器中输入:localhost/
,也可以输入:localhost /index.html
。等用完之后,我们再用sudo apachectl stop
命令将服务器关闭即可。
那么现在的问题是,我们可能会有比较多的web页相关资源,这些资源应该放在哪里呢?在macOS中,Apache程序默认是放在 /etc 目录下的。我们使用shift+command+G键进入到该目录之后就能看到apache2文件夹。里面有一个名为 httpd.conf 的配置文件,我们直接在此文件中搜索 DocumentRoot 即可查到服务器的根目录位置。我们可以直接将网页资源文件夹复制过去即可,然后在地址栏中输入该文件夹名以及所要访问的资源名。像笔者的文档根目录为 /Library/WebServer/Documents
。
网友评论