我遇到了将http://domain.co.uk重定向到http://www.domain.co.uk的问题。我很擅长使用apache和linux,所以这就是我到目前为止所做的。希望有一个明显的错误可以轻松解决。
在我试图让重定向工作时,我发现了一些教程,说我应该通过虚拟主机文件来完成,所以我编辑了我最初为网站设置的现有虚拟主机文件
/etc/apache2/sites-available/domain.co.uk
我在这个文件的顶部添加了一个新块,所以它现在看起来像这样:
<VirtualHost *:80>
ServerName domain.co.uk
Redirect permanent / http://www.domain.co.uk/
</VirtualHost>
<VirtualHost *:80>
# Admin email, Server Name (domain name), and any aliases
ServerAdmin admin@domain.co.uk
ServerName www.domain.co.uk
ServerAlias domain.co.uk
# Index file and Document Root (where the public files are located)
DirectoryIndex index.html index.php
DocumentRoot /home/simon/public/domain.co.uk/public/
# Log file locations
LogLevel warn
ErrorLog /home/simon/public/domain.co.uk/log/error.log
CustomLog /home/simon/public/domain.co.uk/log/access.log combined
</VirtualHost>
编辑完这个文件后,我重新启动了Apache并试用了该网站,但是http://domain.co.uk给了我“无法打开页面 - 无法访问服务器”。 http://www.domain.co.uk仍然正常。
这是<virtualhost>
阻止的正确位置吗?我已经看到一些提到将虚拟主机信息放在httpd.conf
文件中,但我无法在我的apache安装中找到此文件。
任何帮助都会很棒。
答案 0 :(得分:0)
尝试这个并重启Apache
<VirtualHost *:80>
ServerName domain.co.uk
ServerAlias *.domain.co.uk
RedirectMatch permanent /(.*) http://www.domain.co.uk/$1
</VirtualHost>