nginx配置二級域名
為了不讓域名fangyuanxiaozhan.com閒置, 作者又買了個國內的虛擬主機(VPS)的ip為
111.230.254.173
, 用wordpress開了個部落格網站, 由於vps的空間很大, 我就開了個私有網盤服務, 由於日常開發需要用到git, 但又不想公開程式碼, 我又開了個私有git服務
我的vps掛了三個服務, 分別是:
-
- WordPress搭建的部落格服務, 執行於8000埠, 訪問方式 http://fangyuanxiaozhan.com:8000
-
- Gogs搭建的git服務, 執行於10080埠, 訪問方式 http://fangyuanxiaozhan.com:10080
-
- Nextcloud搭建的網盤服務, 執行於8080埠, 訪問方式http://fangyuanxiaozhan.com:8080
我的需求:
- 1.訪問部落格服務時, 直接輸入 http://fangyuanxiaozhan.com
-
- 訪問git服務時, 直接輸入 http://git.fangyuanxiaozhan.com
-
- 訪問網盤服務時, 直接輸入 http://cloud.fangyuanxiaozhan.com
實現的方法
- 到託管域名的網站, 新增DNS解析, 我的域名
fangyuanxiaozhan.com
託管在阿里雲, 我的做法是登入https://dns.console.aliyun.com/#/dns/domainList
, 新增二級記錄
- 我使用的是centos7, nginx配置檔案的預設位置為
/etc/nginx/nginx.conf
, 有意思的是,/etc/nginx/nginx.conf
內引入了 配置資料夾/etc/nginx/conf.d
, 也就是我們可以把/etc/nginx/nginx.conf
中的一些預設配置註釋掉, 直接在資料夾/etc/nginx/conf.d
中配置多個獨立的配置檔案.
-
/etc/nginx/nginx.conf
的配置
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
# Load dynamic modules. See /usr/share/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;
events {
worker_connections 1024;
}
http {
log_format main `$remote_addr - $remote_user [$time_local] "$request" `
`$status $body_bytes_sent "$http_referer" `
`"$http_user_agent" "$http_x_forwarded_for"`;
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
include /etc/nginx/conf.d/*.conf;
}
注意上述配置檔案的最後一行,
include /etc/nginx/conf.d/*.conf;
保證了/etc/nginx/conf.d/
下,所有以.conf結尾的配置檔案, 都會被主配置檔案nginx.conf
引入並生效
- 在
/etc/nginx/conf.d/
下面需要新建三個檔案
- blog.conf (實現8000埠對映到80埠, 不使用二級域名)
server {
listen 80;
server_name fangyuanxiaozhan.com;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://0.0.0.0:8000;
}
}
blog.conf實現了fangyuanxiaozhan.com:8000對映到 fangyuanxiaozhan.com
- git.conf (實現10080埠對映到80埠, 使用二級域名
git
)
server {
listen 80;
server_name git.fangyuanxiaozhan.com;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://0.0.0.0:10080;
}
}
git.conf實現了fangyuanxiaozhan.com:10080對映到 git.fangyuanxiaozhan.com
- nc.conf (實現8080埠對映到80埠, 使用二級域名
cloud
)
server {
listen 80;
server_name cloud.fangyuanxiaozhan.com;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://0.0.0.0:8080;
}
}
git.conf實現了fangyuanxiaozhan.com:8080對映到 cloud.fangyuanxiaozhan.com
重啟nginx使配置生效
- 關閉nginx
sudo $(which nginx) -s stop
- 開啟nginx
sudo $(which nginx)
效果展示
如果你也希望搭建以上服務, 可以參考我的往期文章:
- 雲盤服務: 簡單三步, 搭建全平臺私有同步網盤
- git服務: 用gogs搭建屬於自己的git網站
- 部落格服務: docker進階 一鍵安裝wordpress
自從使用了docker, 發現很多服務的搭建都是很簡單的, 但隨著服務的增多, 二級域名的作用性就顯現出來了, nginx可以很方便的解決二級域名的配置問題,掌握了nginx配置二級域名的技術, 我們就可以優雅的開啟各種服務了~
相關文章
- 二級域名nginx 配置Nginx
- 配置nginx伺服器 —— Nginx新增多個二級子域名Nginx伺服器
- Nginx 配置域名Nginx
- 超詳細網站部落格域名和二級域名、子域名升級HTTPS免費申請SSL證書配置nginx指南網站HTTPNginx
- 使用nginx配置子域名Nginx
- Docker Nginx 配置多個子域名DockerNginx
- Nginx 設定域名轉向配置Nginx
- Nginx轉發多個二級域名及前後端分離Nginx後端
- nginx+tomcat單個域名及多個域名配置NginxTomcat
- Nginx的安裝和多域名配置Nginx
- 什麼是一級域名?一級域名和二級域名的區別是什麼?
- nginx域名訪問的白名單配置梳理Nginx
- IIS中配置實現網站二級域名繫結方式整理網站
- linux 二級域名設定Linux
- 二、Nginx 配置 httpsNginxHTTP
- nginx 反向代理做域名轉發簡單配置Nginx
- vue history 模式打包部署在域名的二級目錄的配置指南Vue模式
- js如何實現主域名和二級域名共用cookieJSCookie
- Nginx 配置二級虛擬目錄訪問 Laravel 重寫NginxLaravel
- 自己做二級域名的DNS (轉)DNS
- Nginx配置以及熱升級Nginx
- Ubuntu 阿里雲安裝環境並配置 二級域名 https sftpUbuntu阿里HTTPFTP
- nginx虛擬域名的配置以及測試驗證Nginx
- Nginx配置之基於域名的虛擬主機Nginx
- 在windows雙系統中,nginx配置虛擬域名WindowsNginx
- .NET MVC 二級域名路由的實現MVC路由
- [nginx]域名設定Nginx
- Hexo系列:(二)Github pages配置自己的域名HexoGithub
- Nginx的安裝和多域名配置的實現方法Nginx
- Nginx配置域名同時支援 https 和 http 訪問NginxHTTP
- SSL證書繫結了頂級域名後二級域名還需再申請嗎
- vue專案部署(npm run build二級域名)VueNPMUI
- Nginx 虛擬主機配置的三種方式(基於域名)Nginx
- Yii2基礎版程式多模組二級域名部署方案以及urlManager對二級域名絕對地址的改造方法
- 記Ubuntu 16.04 下配置 Nginx、PHP7、MySQL環境,以及多域名配置UbuntuNginxPHPMySql
- nginx 服務繫結域名Nginx
- nginx學習(二):初識配置檔案Nginx
- CDN加速域名https中級CA證書的配置HTTP