Ubuntu 上的 Apache 2.2 虚拟主机

Ubuntu 上的 Apache 2.2 虚拟主机

我是 Linux 世界的新手,并且在 Apache 版本 2.2 虚拟主机配置方面遇到了困难。

在我的本地 /var/www 中,我有 2 个站点(和默认的 localhost)在它们各自的目录中:

/var/www/importer
/var/www/foostore

Importer 是安装在 daxstore 目录中的 Opencart 导入器,我正在开发它。我想让两个不同的网站运行,所以我复制了文件

/etc/apache2/sites-available/default

两次进入同一个目录,将其重命名为“importer”和“foostore”,然后将它们编辑为:

<VirtualHost importer:80>
ServerAdmin webmaster@localhost

ServerName  importer
DocumentRoot /var/www/importer/
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/importer>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel debug
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

切换另一侧的名称。然后我编辑了 /etc/hosts 如下:

127.0.0.1   localhost
127.0.1.1   VirtualHD
127.0.0.1   foostore
127.0.0.1   importer

然后我给出命令:

sudo a2ensite importer
sudo a2ensite foostore
sudo service apache2 restart

并且 apache 运行正常。当我尝试访问这两个站点时,浏览器将我重定向到 foostore 站点(该站点也找不到某些文件,但这是另一个问题)。我哪里错了?

谢谢各位先生。

答案1

更改<VirtualHost>检查两个站点配置的块,从<VirtualHost importer:80>到,<VirtualHost *:80>并确保ServerName每个文件中都有正确的指令。重新加载 Apache。

如果这没有帮助,请检查两者access.logerror.log获取有关 Apache 实际正在执行的操作的信息。

答案2

首先,确保您NameVirtualHost *:80的 /etc/apache2/ports.conf 文件中有一行。然后尝试在配置中更改<VirtualHost importer:80>为。<VirtualHost *:80>

答案3

首先禁用刚刚添加的两个网站a2dissite site

打开default文件并将以下内容添加到顶部。简单又好用。如果您以后想将它们移到自己的 conf 文件中或更改安全性,欢迎您这样做,但请先进行测试。

<VirtualHost *:80>
  ServerName importer
  DocumentRoot /var/www/importer
</VirtualHost>

<VirtualHost *:80>
  ServerName foostore
  DocumentRoot /var/www/foostore
</VirtualHost>

然后重启apacheservice apache2 restart

相关内容