我在Ubuntu上运行Apache / 2.4.12,并在/ etc / apache2 / sites-available /文件夹中添加了2个.conf文件,并启用了它们。两个站点都使用相同的Symfony PHP文件。
aaa.conf
Listen 8080
<VirtualHost *:8080>
ServerName local.aaa.com
ServerAlias www.local.aaa.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/aaa/web
<Directory "/var/www/html/aaa/web">
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/aaa_error.log
CustomLog ${APACHE_LOG_DIR}/aaa_access.log combined
</VirtualHost>
bbb.conf
Listen 8081
<VirtualHost *:8081>
ServerName local.bbb.com
ServerAlias www.local.bbb.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/bbb/web
<Directory "/var/www/html/bbb/web">
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/bbb_error.log
CustomLog ${APACHE_LOG_DIR}/bbb_access.log combined
</VirtualHost>
我遇到的问题是,只有service apache2 reload
我打开的第一个网站才能运行。例如:
第一种情况
- 我正在重新加载
- 我打开local.aaa.com:8080它的工作原理
- 我打开local.bbb.com:8081它没有用,我得到PHP Fatal error: Class 'AppBundle\\AppBundle' not found
第二种情况
- 我正在重新加载
- 我打开local.bbb.com:8081它的工作原理
- 我打开local.aaa.com:8080它没有用,我得到PHP Fatal error: Class 'AppBundle\\AppBundle' not found
修改
@Ryan Vincent:
netstat -a
显示两个网站runnnig
答案 0 :(得分:0)
所有的Listen指令都应该在Ubuntu提供的主apache配置文件中(/etc/apache2/apache2.conf)。
启用网站的文件夹必须只包含使用a2ensite生成的适当的符号链接到可用的网站,这是您必须放置虚拟主机配置的地方。
将它们移动到那里后,启用每个虚拟主机并重新加载apache。
sudo a2ensite aaa.conf
sudo a2ensite bbb.conf
sudo service apache2 reload