【问题标题】:apache2 multiple virtualhost but only first one worksapache2 多个虚拟主机,但只有第一个有效
【发布时间】:2015-11-05 07:38:17
【问题描述】:

我在 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

编辑
@瑞安文森特: netstat -a 显示两个站点都在运行

【问题讨论】:

  • 如果您运行的是单独的主机名,为什么还需要单独的端口?
  • 这是一个更大项目的一部分,我需要遵循这个配置
  • 如果您在哪里为两者使用相同的端口,它是否有效?另外,您是说在每次 apache 重新加载后,交替主机开始工作吗? eit,也许有第三个(默认)虚拟主机接管?
  • 将它们更改为相同的端口是在做同样的事情。是的,每次重新加载后,我打开的只有第一个有效,第二个不管这两个中的哪一个产生该错误
  • 愚蠢的问题,您是否启用了两个虚拟主机? (a2ensite)

标签: php apache symfony ubuntu


【解决方案1】:

你所有的 Listen 指令都应该在 Ubuntu 提供的主 apache 配置文件中(/etc/apache2/apache2.conf)。

site-enabled 文件夹必须只包含使用 a2ensite 生成的正确符号链接,指向可用的 sites-available,这是您必须放置虚拟主机配置的位置。

将它们移到那里后,启用每个虚拟主机并重新加载 apache。

sudo a2ensite aaa.conf
sudo a2ensite bbb.conf
sudo service apache2 reload

【讨论】:

  • 我进行了移动,但在重新加载后尝试加载第二个站点时仍然出现相同的错误。这也是我的错,我把它们放在了可用的网站中,但我写的是启用网站的
猜你喜欢
  • 1970-01-01
  • 2011-08-02
  • 1970-01-01
  • 2016-11-04
  • 1970-01-01
  • 2012-03-22
  • 2014-11-04
  • 2018-08-24
  • 2023-03-04
相关资源
最近更新 更多