我在 Ubuntu 14.04 上安装了 Apache 2.4,它通过地址工作正常http://localhost/
。但是当我尝试添加新的虚拟主机(例如,http://bow.loc
重新启动 Apache 时)时,新地址在 上不可用,http://bow.loc
而在 上不可用http://localhost
。
我的配置是:
<VirtualHost *:80>
ServerName www.bow.loc
ServerAlias bow.loc
DocumentRoot /var/www/html/bow/web
<Directory /var/www/html/bow>
AllowOverride All
Options FollowSymLinks MultiViews
Order allow,deny
Allow from all
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /app.php [QSA,L]
</IfModule>
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
我怎样才能访问我的网站http://bow.loc
?
答案1
自 Apache 2.4 起,每个虚拟主机文件都应具有 .conf 扩展名。
您可以重命名每个虚拟主机文件以包含.conf 扩展名:
mv /etc/apache2/sites-available/example.com /etc/apache2/sites-available/example.com.conf
使用a2ensite命令添加虚拟主机:
a2ensite example.com.conf
然后重新加载 Apache:
service apache2 reload
答案2
我忘记添加主机了/etc/hosts
:
127.0.0.1 localhost
127.0.0.1 bow.loc
我以为 apache 会自动完成此操作。
答案3
好吧,我已经尝试了所有提供的解决方案……但遗憾的是,没有任何效果!唉,我编辑了
/etc/hosts
进入
127.0.1.1 example.com test.com
并且成功了!!
(如果我没有讲太多技术方面的内容请见谅!)
答案4
Options FollowSymLinks MultiViews
需要字符“+”:+FollowSymLinks +Multiviews
Order allow,deny
Allow from all
现在 = 要求所有已授予