linux - Apache2 站点可用配置

标签 linux apache debian

首先,我已经完成搜索并找到答案,但我仍然不明白以下内容。

我有两个 .co.uk 域,在我的 Debian 机器上设置了两个目录/home/site1/public_html/和/home/site2/public_html/- (示例、用户已设置等)。

因此,我将我的域指向我的盒子 IP 地址,并使用两个 DNS 条目(两者相同):

DNS Entry      Type      IP Address
@              A         myip
www            A         myip

现在,对于站点可用配置,我创建了两个新的"file",两者的设置相同,但路径和信息针对各自的域进行了更改:

<VirtualHost *:80>
    ServerAdmin my-email-address
    ServerName www.site1.co.uk
    ServerAlias site1.co.uk
    DocumentRoot /home/site1/public_html/
</VirtualHost>

&

<VirtualHost *:80>
    ServerAdmin my-email-address
    ServerName www.site2.co.uk
    ServerAlias site2.co.uk
    DocumentRoot /home/site2/public_html/
</VirtualHost>

我a2ensite,重新加载apache。

现在,如果我访问 www.site1.co.uk 或 site1.co.uk ,它就可以正常工作。 如果我访问 www.site2.co.uk 它可以工作,但是 site2.co.uk 不起作用(找不到页面),我根本不知道为什么。

有人可以向我解释一下吗?我是否应该添加一些其他 DNS 条目、不同的配置等?

问候,

最佳答案

根据我的经验,您需要将 site2.co.uk 重定向到 www.site2.co.uk。

这是您在 Apache2 中应该如何做

RewriteCond %{HTTP_HOST}   !^www\.site2\.co.uk [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteRule ^/?(.*)         http://www.site2.co.uk/$1 [L,R,NE]

欲了解更多信息,请参阅https://httpd.apache.org/docs/2.4/rewrite/remapping.html - 规范主机名。

关于linux - Apache2 站点可用配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15587048/

相关文章:

php - 使用 lamp-server^ 包安装 LAMP 与单独安装 Apache、PHP、MySQL 的优缺点

apache - 如何使用 htaccess 将子目录及其中的所有文件重定向到根目录?

c++ - Qt debian/ubuntu : Can't compile, 错误:找不到-lGL

linux - xterm 终端中的颜色列表

mysql - 授权时失去连接

c++ - 在 linux c++ 中没有通过串口发送数据

javascript - HTML 中 Javascript 函数的问题

linux - 用于Linux的免费网站线框图工具

linux - 我试图阻止在 BASH 中执行命令。. 并不总是有效

mysql - 当 apache mysql 发生更改时触发 node.js