在Mac OS sierra更新后Apache发出404错误

dru*_*ine 19 php apache macos macos-sierra

我刚刚更新到Mac OS 10.11 Sierra并且经典的Web服务器工作不正常,或者我应该说我的主目录不工作Apache服务器正在localhost工作,因为我得到'It works'页面,但是localhost/~myuser给出了这个消息'The requested URL /~myuser was not found on this server' 我试图跟随这个tuto,但它仍然无法正常工作

有人能帮我吗?

Tob*_*ias 28

在终端中,转到/ etc/apache2和

sudo mv httpd.conf httpd.conf.sierra
sudo mv httpd.conf~previous httpd.conf
sudo apachectl restart
Run Code Online (Sandbox Code Playgroud)

对我来说就像一个魅力.

  • 我这样做+以类似的方式重命名httpd-vhosts.conf文件.那为我排序了.(我绝对讨厌Mac,升级后总是出问题.) (2认同)

Hes*_*ham 23

从El Capitan升级到Sierra后,对我有用的是:

1)从/etc/apache2/httpd.conf取消注释

LoadModule userdir_module libexec/apache2/mod_userdir.so
LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
Include /private/etc/apache2/extra/httpd-vhosts.conf
Include /private/etc/apache2/extra/httpd-userdir.conf
Run Code Online (Sandbox Code Playgroud)

2)从/etc/apache2/extra/httpd-userdir.conf取消注释

Include /private/etc/apache2/users/*.conf
Run Code Online (Sandbox Code Playgroud)

3)在我的/etc/apache2/users/$USERNAME.conf文件中我也配置了ProxyPass,为了让它再次运行,我不得不从httpd.conf中重新取消注释以下内容

LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so
Run Code Online (Sandbox Code Playgroud)

4)PHP可选:您还需要从httpd.conf重新取消注释以下内容:

LoadModule php5_module libexec/apache2/libphp5.so
Run Code Online (Sandbox Code Playgroud)

5)当然,重启apache

sudo apachectl -k restart
Run Code Online (Sandbox Code Playgroud)

之后事情对我有用,但是我现在更有动力开始转向Vagrant.

  • 它不适合我,但消息已经改变,虽然我有一个403禁止页面现在我仔细检查/etc/apache2/users/username.conf它包含以下几行应该没问题还有其他线索吗?<Directory"/ Users/username/Sites /"> AllowOverride All Options Indexes MultiViews FollowSymLinks需要所有已授权的</ Directory> (2认同)