经过一番查找,终于在一篇 Apache 的配置讲解博客中找到了自己需要的方案:二级域名共享主机IP和端口 。
所要处理的情形
两个用于站点的文件夹位于完全不同的路径,需要使用不同的二级域名可以各自访问对应的站点页面。
方法
配置 nginx
“虚拟主机”的用法很灵活,只需要在一份配置 nginx 的 test.conf 文件中指定站点文件所在的文件夹,指定站点域名即可,建议该文件位于 /etc/nginx/conf.d/
目录里。虚拟主机就是配置文件中的 server 与大括号后的字段。
server {
listen 80;
listen [::]:80;
root /root/blog/public;
index index.html;
server_name blog.letow.top;
location / {
}
}
- root 指定了站点文件夹的位置
- server_name 是 nginx 接收解析的域名
对于另一个站点,再单独写一个类似的配置文件。
最后,在 nginx 默认的配置文件 /etc/nginx/nginx.conf
中的 http 字段结束前,加上一句 include /etc/nginx/conf.d/*.conf;
,即可向 nginx 加载这两份配置文件。
要立即使用这份配置,运行命令:
nginx -s reload
更改 DNS 解析记录
还有一个很重要的步骤就是配置 DNS 解析。
只需要添加一条 A 类型解析就可以了,主机记录填写 * ,这样所有的二级域名都被解析到主机,接下来的工作由 nginx 完成。