nginx快速部署一個(gè)網(wǎng)站服務(wù)(多域名+多端口)
一、nginx虛擬主機(jī),部署網(wǎng)站
都是在同一臺(tái)服務(wù)器上部署
二、部署單域名/IP網(wǎng)站服務(wù)
1、創(chuàng)建一個(gè)普通用戶,用戶管理nginx網(wǎng)站服務(wù)
# 創(chuàng)建一個(gè)名為www的用戶組 groupadd www -g 666 # 創(chuàng)建一個(gè)名為www的用戶并添加到www的用戶組中 useradd www -u 666 -g 666 -M -s /sbin/nologin # 查看用戶id id www #結(jié)果 uid=666(www) gid=666(www) groups=666(www)
2、修改nginx主配置文件
[root@iz0jlfqv8fyt7iuxoec4clz ~]# cat /etc/nginx/nginx.conf
user www; # 設(shè)置運(yùn)行用戶,剛剛創(chuàng)建的用戶
worker_processes auto;
error_log /var/log/nginx/error.log notice;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
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;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf; # include導(dǎo)入該目錄下的*.conf配置文件
}
3、創(chuàng)建虛擬主機(jī)nignx子配置文件
只需要寫server{}標(biāo)簽即可。
# 先看conf.d下還有沒有其他的*.conf結(jié)尾的,有的話先備份;
mv default.conf default.conf-bak
# 創(chuàng)建虛擬主機(jī)nignx子配置文件(qqfly配置文件)
vim /etc/nginx/conf.d/qqfly.conf
# 寫入如下信息,自己的根據(jù)情況自行修改(域名或ip;index.html的訪問路徑)
server {
listen 80;
# nginx會(huì)匹配 域名/IP:80
server_name 域名/IP/localhost;
# 支持中文的參數(shù)
charset utf-8;
location / {
# 根據(jù)root參數(shù),填寫網(wǎng)頁根目錄信息
# 表示當(dāng)你訪問 http://域名:80 ,自動(dòng)來這個(gè)目錄下找數(shù)據(jù)
root /www/qqfly/;
# 默認(rèn)找 /www/qqflq/ 的名字叫做index.html的文件
index index.html;
}
}
上面配置文件中配置了index.html的地址,這里可以看到是沒有的,我們創(chuàng)建一下;
# 創(chuàng)建一個(gè)存放網(wǎng)頁訪問地址的目錄 mkdir -p /www/qqfly/ # 創(chuàng)建網(wǎng)頁靜態(tài)文件,index.html qqfly.jpg qqfly.txt # 部署一個(gè)靜態(tài)網(wǎng)站,最基本的提供,html,jpg,txt等靜態(tài)數(shù)據(jù);如果是其他類型的文件,nginx默認(rèn)不解析,直接下載 # nginx都可以幫你去返回,解析請(qǐng)求 cd /www/qqfly/ # 創(chuàng)建靜態(tài)頁面index.html cat > /www/qqfly/index.html << EOF > <meta charset=utf-8> > <H1>這是一個(gè) qqfly 的測(cè)試頁面;用于證明nginx一個(gè)網(wǎng)站部署成功了;</H1> > EOF # 創(chuàng)建一個(gè)jpg文件 wget -O qqfly.jpg https://i1.hdslb.com/bfs/archive/5edd3d62a5ca140063ef8e32a852348a422b86b6.jpg # 創(chuàng)建一個(gè)txt文件 echo "qq飛車游戲很好玩!測(cè)試!" > qqfly.txt # 修改靜態(tài)文件的屬主,屬組 chown -R www:www /www/
4、測(cè)試nginx配置文件語法,然后啟動(dòng)
# 檢測(cè)nginx配置中語法是否有誤 nginx -t

ok則為正常,沒有錯(cuò)誤;
啟動(dòng)nginx
# 查看nginx狀態(tài) systemctl status nginx # 重啟nginx systemctl restart nginx
5、域名訪問地址
如果是使用的域名,那么需要在本地配置dns域名解析
分別添加二級(jí)域名,三級(jí)域名,hosts解析
ip 三級(jí)域名 二級(jí)域名
配置好還是訪問不到?
1、可以先看看可以ping通域名嗎。
2、檢查你本地是否設(shè)置了代理,如果有則關(guān)閉。
6、IP訪問地址
這里我使用的是ip地址訪問,因?yàn)槲业挠蛎枰獋浒福暾?qǐng)還沒下來,所以先用ip測(cè)試吧;
訪問html資源

訪問jpg資源

訪問txt資源

如果是其他類型的文件,nginx默認(rèn)不解析,會(huì)直接下載
直接生成靜態(tài)數(shù)據(jù),不用重啟nginx,這就是磁盤上的一些靜態(tài)數(shù)據(jù)
nginx的server{}虛擬主機(jī),以及設(shè)置了,去這個(gè)目錄下搜索資料
nginx默認(rèn)不識(shí)別這個(gè)test.ttt格式的文件,因此直接下載了
例如:
cat > /www/qqfly/qqfly.ttt << EOF qq飛車游戲很好玩!測(cè)試! EOF
因?yàn)槭庆o態(tài)頁面,上面也說了,修改不用重啟;(但是修改配置文件的話就需要重啟nignx才能生效;)
頁面直接訪問,會(huì)讓你下載;

下載完打開,里面的內(nèi)容就是剛剛寫進(jìn)去的內(nèi)容;

三、nginx的配置文件匹配
還記得上面讓備份的一個(gè)nginx配置文件嗎,/etc/nginx/conf.d/default.conf,這個(gè)里面的server_name 寫的是localhost,而咱們用的是ip訪問網(wǎng)站,所以默認(rèn)會(huì)先去找default.conf;所以在上面給他備份了一下,然后才會(huì)去找另一個(gè)conf文件。
nginx配置會(huì)有一個(gè)先后順序,默認(rèn)按照文件名的字典順序讀取 /etc/nginx/conf.d 目錄下的配置文件。如果需要特定的加載順序,可以使用 include 指令來指定讀取文件的順序。
#先看當(dāng)前有幾個(gè)nginx配置文件
[root@iz0jlfqv8fyt7iuxoec4clz conf.d]# ls
default.conf-bak qqfly.conf
#先看第一個(gè)default.conf
[root@iz0jlfqv8fyt7iuxoec4clz conf.d]# grep -Ev '#|^$' default.conf-bak
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
#再看第二個(gè)配置文件
[root@iz0jlfqv8fyt7iuxoec4clz conf.d]# cat qqfly.conf
server {
listen 80;
# nginx會(huì)匹配 域名/IP:80
server_name 域名;
# 支持中文的參數(shù)
charset utf-8;
location / {
# 根據(jù)root參數(shù),填寫網(wǎng)頁根目錄信息
# 表示當(dāng)你訪問 http://域名:80 ,自動(dòng)來這個(gè)目錄下找數(shù)據(jù)
root /www/qqfly/;
# 默認(rèn)找 /www/qqflq/ 的名字叫做index.html的文件
index index.html;
}
}
可以看到一個(gè)寫的域名,一個(gè)寫的localhost;因?yàn)槲覀冞@邊的域名用不了,所以,要是不備份那個(gè)default.conf默認(rèn)的讀取的就是default.conf這個(gè)配置文件;
如果域名是沒問題的,那么直接用域名訪問,就會(huì)直接去找qqfly.conf這個(gè)配置文件,就不會(huì)存在先后順序什么的。
四、部署多域名網(wǎng)站服務(wù)
1、首先準(zhǔn)備兩個(gè)域名、index路徑、nginx配置文件
| 域名 | nginx的index路徑 | nginx的配置文件名 |
|---|---|---|
| 域名1 (test1.top) | /www/test1/index.html | /etc/nginx/conf.d/test1.conf |
| 域名2 (test2.top) | /www/test1/index.html | /etc/nginx/conf.d/test2.conf |
配置域名的話自己配置就可以;
2、創(chuàng)建兩個(gè)域名的nginx配置文件 test1域名
vim /etc/nginx/conf.d/test1.conf
#內(nèi)容如下
server {
listen 80;
#域名1
server_name test1.top;
# 支持中文的參數(shù)
charset utf-8;
location / {
root /www/test1/;
index index.html;
}
}
test2域名
vim /etc/nginx/conf.d/test2.conf
#內(nèi)容如下
server {
listen 80;
#域名1
server_name test2.top;
# 支持中文的參數(shù)
charset utf-8;
location / {
root /www/test2/;
index index.html;
}
}
3、創(chuàng)建兩個(gè)域名的index.html訪問頁面
test1 的 index.html
# 創(chuàng)建test1和test2目錄
mkdir -p /www/{test1,test2}
# 創(chuàng)建完之后,寫入數(shù)據(jù)到test1/index.html中
cat > /www/test1/index.html << EOF
> <meta charset=utf-8>
> <H2> test1 頁面測(cè)試 </H2>
> EOF
test2 的 index.html
# 給test2域名寫入index.html頁面數(shù)據(jù) cat > /www/test2/index.html << EOF <meta charset=utf-8> <H2> test2 頁面測(cè)試 </H2> EOF
4、檢查nignx配置是否有誤 并 重啟nginx服務(wù)
# 檢查nignx配置是否有誤 nginx -t # 重啟nginx服務(wù) systemctl restart nginx
5、頁面訪問兩個(gè)域名
test1.top
teset2.top
可以看到分別兩個(gè)頁面,這樣多域名網(wǎng)站服務(wù)部署成功。
五、部署多端口網(wǎng)站服務(wù)
1、首先準(zhǔn)備兩個(gè)端口、index路徑、nginx配置文件(一個(gè)即可)
| 端口 | nginx的index路徑 | nginx的配置文件名(使用同一個(gè)配置) |
|---|---|---|
| 81 | /www/81/index.html | /etc/nginx/conf.d/port.conf |
| 82 | /www/82/index.html | /etc/nginx/conf.d/port.conf |
2、創(chuàng)建兩個(gè)port的nginx配置文件(一個(gè)配置中)
vim /etc/nginx/conf.d/port.conf
# 81 端口配置
server {
listen 81;
server_name localhost;
# 支持中文的參數(shù)
charset utf-8;
location / {
root /www/81/;
index index.html;
}
}
# 82 端口配置
server {
listen 82;
server_name localhost;
# 支持中文的參數(shù)
charset utf-8;
location / {
root /www/82/;
index index.html;
}
}
3、創(chuàng)建兩個(gè)端口的index.html頁面
# 創(chuàng)建目錄
mkdir -p /www/{81,82}
# 創(chuàng)建81和82的index頁面測(cè)試數(shù)據(jù)
cat > /www/81/index.html << EOF
<meta charset=utf-8>
<H1>我是81,歡迎來到我的頁面</H1>
EOF
cat > /www/82/index.html << EOF
<meta charset=utf-8>
<H1>我是82,歡迎來到我的頁面</H1>
EOF
4、檢查nignx配置是否有誤 并 重啟nginx服務(wù)
# 檢查nignx配置是否有誤 nginx -t # 重啟nginx服務(wù) systemctl restart nginx
5、頁面訪問兩個(gè)端口
ip:端口
ip:81

- ip:82

5.1 頁面訪問兩個(gè)端口 --> 各添加一個(gè)jpg頁面
到網(wǎng)上隨便照兩張圖,分別放到/www/81/下和/www/82/下;
# 81端口的圖片 wget -O /www/81/81.jpg https://picnew12.photophoto.cn/20180728/81jianjunjieqizhiyishuzizitisheji-30355854_1.jpg # 82端口的圖片 wget -O /www/82/82.jpg https://img95.699pic.com/xsj/0v/2f/k8.jpg%21/fw/700/watermark/url/L3hzai93YXRlcl9kZXRhaWwyLnBuZw/align/southeast
這里添加完成之后,不需要重啟nginx,直接在頁面訪問 ip:端口/圖片名
81 服務(wù)器(ip:81/81.jpg)

82 服務(wù)器(ip:82/82.jpg)

5.2 頁面訪問兩個(gè)端口 --> 各添加一個(gè)txt資源
echo "我又來測(cè)試了,這里是 81 的一個(gè)測(cè)試頁面" > /www/81/81.txt echo "我也又來測(cè)試了,這是是 82 的一個(gè)測(cè)試頁面" > /www/82/82.txt
這里添加完成之后,同樣也不需要重啟nginx,直接在頁面訪問 ip:端口/txt名
81 服務(wù)器(ip:81/81.txt)

82 服務(wù)器(ip:82/82.txt)

到這里就完成了nginx部署一個(gè)網(wǎng)站及多個(gè)域名的網(wǎng)站和多個(gè)端口的網(wǎng)站
到此這篇關(guān)于nginx快速部署一個(gè)網(wǎng)站服務(wù)(多域名+多端口)的文章就介紹到這了,更多相關(guān)nginx部署網(wǎng)站服務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- nginx配置同一域名同一端口下部署多個(gè)vue項(xiàng)目的實(shí)現(xiàn)
- nginx多域名轉(zhuǎn)發(fā)的實(shí)現(xiàn)
- Nginx同一個(gè)域名配置多個(gè)項(xiàng)目的實(shí)現(xiàn)方法
- Nginx配置多端口多域名訪問的實(shí)現(xiàn)
- 一臺(tái)nginx服務(wù)器多域名配置的方法
- Nginx 多域名配置的方法
- 詳解實(shí)現(xiàn)Nginx+Tomcat實(shí)現(xiàn)單IP、多域名、多站點(diǎn)的訪問
- windows下Nginx多域名簡(jiǎn)單配置教程
- nginx實(shí)現(xiàn)多個(gè)域名和集群的方法步驟
相關(guān)文章
fastdfs+nginx集群搭建的實(shí)現(xiàn)
這篇文章主要介紹了fastdfs+nginx集群搭建的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
Nginx服務(wù)500:Internal Server Error原因之一
這篇文章主要介紹了Nginx服務(wù)500:Internal Server Error原因之一,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
nginx上部署react項(xiàng)目的實(shí)例方法
今天小編就為大家分享一篇關(guān)于nginx上部署react項(xiàng)目的實(shí)例方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-02-02
Nginx 路由轉(zhuǎn)發(fā)和反向代理location配置實(shí)現(xiàn)
本文主要介紹了Nginx 路由轉(zhuǎn)發(fā)和反向代理location配置實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11
Nginx下Frp強(qiáng)制重定向?yàn)閔ttps配置詳解
這篇文章主要介紹了Nginx下Frp強(qiáng)制重定向?yàn)閔ttps配置詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-04-04
如何實(shí)現(xiàn)Nginx同一端口同時(shí)支持http與https協(xié)議
最近有一個(gè)需求,需要讓一個(gè)端口的http服務(wù)支持https訪問,本文就來介紹一下如何實(shí)現(xiàn)Nginx同一端口同時(shí)支持http與https協(xié)議,感興趣的可以了解一下2023-11-11
nginx+uwsgi啟動(dòng)Django項(xiàng)目的詳細(xì)步驟
nginx+uwsgi+django是我們常用的django部署方式。這篇文章主要介紹了nginx+uwsgi啟動(dòng)Django項(xiàng)目的詳細(xì)步驟,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-10-10

