經過一番查找,終於在一篇 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 完成。