[英]PHP Symfony apps on OSX El Capitan apache
我已经在El Capitan(10.11.2)上安装了symfony_demo应用程序
如果我按以下方式运行内置的PHP服务器:
php app/console server:run 127.0.0.1:8111
该演示应用程序位于localhost:8111
但是,如果我通过El Capitan的内置apache实例(通过将其复制到我的<user>
/ Sites目录中)访问该应用程序,则会得到一个目录列表。
请注意,我确实在apache上启用了PHP,并且其他基于PHP的应用程序按当前配置通过apache运行(例如Joomla)。
我还需要什么配置的Apache?
附录:
我正在运行操作系统的服务器版本。 我读到在/Library/Server/Web/Config/apache2/httpd_server_app.conf
存在另一个apache配置文件,但是取消注释虚拟主机.conf和.so指令,并通过该文件中的Server应用程序重新启动“网站”没有区别行为
您需要取消注释/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配置。 在Symfony文档中阅读有关配置Web服务器的更多信息 。
成功! 这里的关键信息是OSX的Server版本具有它自己的配置,该配置默认情况下禁用.htaccess重定向 。
在“服务器”>“网站”>“服务器网站(编辑)>编辑高级设置”中找到设置后,“允许使用.htaccess文件覆盖并重新启动网站,symfony演示可以在http:// localhost / symfony_demo / web /正常运行
nb:不需要虚拟主机-只是方便
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.