Yosemite升级后破坏的Apache虚拟主机

Syl*_*Ash 2 php apache osx-yosemite

我最近升级到MAC OS X Yosemite,我的虚拟主机的apache配置无效.我根据@raoulsson(https://superuser.com/questions/827937/apache-problems-after-upgrading-to-yosemite)的建议升级了php :

curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6
Run Code Online (Sandbox Code Playgroud)

还编辑了/etc/apache2/extra/httpd-vhosts.conf:

<VirtualHost *:80>
 ServerName test.local
 DocumentRoot "/Users/my-name/www/test"

 <Directory "/Users/my-name/www/test>
     AllowOverride All
     #Order allow,deny
     #Allow from all
    Require all granted

    RewriteEngine on

    # Don't rewrite files or directories
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ - [L]

    # Rewrite everything else to index.html to allow html5 state links
    RewriteRule ^ index.html [L]
 </Directory>

 <IfModule dir_module>
    DirectoryIndex index.html
 </IfModule>

 <Files ".ht*">
    Order deny,allow
    Deny from all
 </Files>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

现在导航到我的一个虚拟主机(http://test.local)给我一条消息"It Works"而不是显示我的网站.任何人都知道我错过了什么?

编辑: 事实证明问题出在/etc/apache2/httpd.conf中.我必须重新启用虚拟主机才能使其正常工作.由于我在上面的虚拟主机中使用重写,我还必须加载重写引擎.

LoadModule alias_module libexec/apache2/mod_alias.so
LoadModule rewrite_module libexec/apache2/mod_rewrite.so

# Virtual hosts
Include /private/etc/apache2/extra/httpd-vhosts.conf
Run Code Online (Sandbox Code Playgroud)

不确定是否需要alias_module,但我的配置现在正在运行,所以我将保留它.

xia*_*hao 5

首先,您需要删除某些行中的"#".特别是默认情况下不导入vhost.conf文件.

喜欢 :

#LoadModule php5_module libexec/apache2/libphp5.so
#LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
#Include /private/etc/apache2/extra/httpd-vhosts.conf
Run Code Online (Sandbox Code Playgroud)

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

并在其他人中添加一些"#"

<Directory />
     AllowOverride none
     Require all denied
</Directory>
Run Code Online (Sandbox Code Playgroud)

<Directory />
     #AllowOverride none
     #Require all denied
</Directory>
Run Code Online (Sandbox Code Playgroud)

根据http://mallinson.ca/osx-web-development/