OSX上的PHP Symfony应用程序El Capitan apache

时间:2016-03-10 06:37:56

标签: php macos apache symfony

我在El Capitan(10.11.2)上安装了symfony_demo应用程序

如果我按如下方式运行内置的PHP服务器:

php app/console server:run 127.0.0.1:8111

演示应用程序是livehosthost:8111

但如果我通过El Capitan的内置apache实例访问应用程序(通过将其复制到我的<user> / Sites目录中),我只会获得一个目录列表。

请注意,我确实在apache上启用了PHP,其他基于PHP的应用程序通过当前配置的apache运行(例如Joomla)。

我还需要更多apache配置吗?

附录:

我正在运行操作系统的服务器版本。我读到在/Library/Server/Web/Config/apache2/httpd_server_app.conf处存在另一个apache配置文件 但是取消注释vhosts .conf和.so指令并通过此文件中的Server应用程序重新启动'Websites'对行为没有任何影响

2 个答案:

答案 0 :(得分:0)

您需要在/etc/apache2/httpd.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

接下来,您可以编辑/etc/apache2/extra/httpd-vhosts.conf来定义虚拟主机。例如,如果您的项目位于/Users/username/Sites/symfony(用您的用户名替换“username”,并将“symfony”替换为您的项目目录):

<VirtualHost *:80>
    ServerName symfony.dev

    DocumentRoot "/Users/username/Sites/symfony/web/"
    <Directory "/Users/username/Sites/symfony/web/">
        AllowOverride All
        Order Allow,Deny
        Allow from All
    </Directory>
</VirtualHost>

在示例中,我使用了假域symfony.dev。如果你想使用它,你需要将它添加到你的/etc/hosts文件中(在那里添加一个新行):

127.0.0.1 symfony.dev

更改apache的配置后,不要忘记重新启动它:

sudo /usr/sbin/apachectl restart

您可能需要根据需要调整vhost配置。阅读more about configuring the web server in the Symfony documentation

答案 1 :(得分:0)

成功! 这里的关键信息是OSX的服务器版本具有自己的配置,默认情况下禁用.htaccess重定向

在Server&gt;中找到设置后网站&gt;服务器网站(编辑)&gt;编辑高级设置&gt; “允许使用.htaccess文件覆盖 并重新启动网站,symfony演示在http://localhost/symfony_demo/web/

正常工作

n.b。:不需要vhosts - 这只是一个方便