我有两个正在运行的站点,如下所示。服务器:nginx/1.14.2 / Debian 10
- 目录
mydomain.com
中的主站点/var/www/mydomain
blog.mydomain.com
/var/www/blog` 目录中的子站点
查看 DNS 条目。
Type Name Content TTL
A blog 34.72.11.9 auto
A mydomain.com 34.72.11.9 auto
CNAME www mydomain.com auto
单独配置nginx虚拟主机
server_name mydomain.com www.mydomain.com
和
server_name sub1.mydomain.com
但是,blog.mydomain.com 也加载了 mydomain.com 的内容。
任何想法 ?
答案1
我无法发表评论,我需要另外四个声誉点,但我也许可以提供帮助。
根据您提供的信息,很难弄清楚,但作为指南,我执行以下操作。我使用 Nginx 作为反向代理,它将 Apache 缓存在另一台服务器上,但配置应该相同。
在乱搞你的 nginx 配置之前,一定要先备份。我还假设你使用的是 Linux 机器,而不是 Windows 机器。
在我的 nginx.conf 中使用 http 块;
include /etc/nginx/sites-enabled/*.conf
每个域都有自己的配置,以便于调试,例如 /etx/nginx/sites-enabled/mydomain.com.conf
server {
listen 192.168.0.100:80;
server_name mydomain.com www.mydomain.com;
root /var/www/mydomain.com;
index index.html index.php;
}
现在对于 /etc/nginx/sites-enabled/blog.mydomain.com.conf;
server {
listen 192.168.0.100:80;
server_name blog.mydomain.com;
root /var/www/blog.mydomain.com;
index index.html index.php;
}
现在告诉 nginx 测试配置然后重新加载。
sudo nginx -t
sudo nginx -s reload
如果上述方法不起作用,请确保没有其他“服务器”块覆盖,并且没有在任何地方设置“default_server”。确保文件所有权和访问权限正确,并且 nginx 用户可以读取所需的文件。