使用nginx部署前端項(xiàng)目的實(shí)現(xiàn)
1.安裝nginx
直接安裝報(bào)錯復(fù)現(xiàn)
yum -y install nginx
![[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-aj50M2QD-1682698172214)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230428231617125.png)]](http://img.jbzj.com/file_images/article/202310/2023103116254429.png)
解釋:
Nginx在CentOS官方軟件倉庫中不可用,但它在EPEL (額外的CentOS軟件包)軟件倉庫中可用,因此安裝前需要先安裝EPEL軟件倉庫
正確安裝方式
1.安裝epel-release
yum -y install epel-release
![[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-eUs3znip-1682698172215)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230428231846788.png)]](http://img.jbzj.com/file_images/article/202310/2023103116254430.png)
2.安裝Nginx
yum -y install nginx
![[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-Yu8YP5fq-1682698172216)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230428232043739.png)]](http://img.jbzj.com/file_images/article/202310/2023103116254431.png)
3.啟動Nginx
Nginx安裝完成后,啟動Nginx服務(wù)
systemctl start nginx #啟動服務(wù) systemctl enable nginx #設(shè)置開機(jī)自啟 systemctl status nginx #查看啟動狀態(tài)
![[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-H2cA7u7G-1682698172216)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230428232335203.png)]](http://img.jbzj.com/file_images/article/202310/2023103116254432.png)
4.配置Nginx
由于Nginx默認(rèn)配置文件并不適合我們的需求,我們需要對其進(jìn)行修改。您可以按照下面的步驟操作:
備份默認(rèn)配置文件:
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
使用文本編輯器打開新的配置文件 /etc/nginx/nginx.conf,并將其修改為以下內(nèi)容:
user nginx;
worker_processes auto;
worker_rlimit_nofile 8192;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
#gzip on;
server {
listen 80;
server_name localhost;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
}
上述配置文件將Nginx運(yùn)行的用戶來指定為nginx,同時(shí)為每個CPU核心配置一個worker進(jìn)程,在“http”部分添加了一些基礎(chǔ)配置,為Nginx添加了默認(rèn)的www根目錄和默認(rèn)的網(wǎng)站,以及配置了幾個常見的錯誤頁面
5.重啟Nginx
systemctl restart nginx
現(xiàn)在,您已經(jīng)成功地安裝和配置了Nginx。您可以通過打開服務(wù)器的IP地址或域名,以HTTP協(xié)議訪問服務(wù)器進(jìn)行測試
![[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-q3jxVDxs-1682698172217)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230428233335178.png)]](http://img.jbzj.com/file_images/article/202310/2023103116254433.png)
2.配置自己網(wǎng)頁
1.創(chuàng)建網(wǎng)站根目錄
在服務(wù)器上創(chuàng)建一個新的目錄來存放您的網(wǎng)站文件。例如,您可以在 /var/www/目錄中創(chuàng)建一個名為 mysite 的新目錄:
mkdir -p /var/www/mysite
2.添加網(wǎng)站文件
可使用ftp工具,也可以自己創(chuàng)建一個html
![[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-zCDAHcTn-1682698172218)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230428234405048.png)]](http://img.jbzj.com/file_images/article/202310/2023103116254434.png)
3.配置Nginx
vim /etc/nginx/nginx.conf
server {
listen 8888; #配置端口
listen [::]:8888;
server_name 192.168.6.100; #修改為您的域名
root /var/www/mysite; #必須在這個層里面有自己的index.html首頁
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
在Nginx配置文件中的 server 塊中,經(jīng)常會看到兩個 listen 語句,看起來會有點(diǎn)奇怪:
server {
listen 80;
listen [::]:80;
...
}
其中,listen 80; 表示將監(jiān)聽服務(wù)器的端口 80,而 listen [::]:80; 則是 IPv6 地址的監(jiān)聽器,同時(shí)監(jiān)聽端口 80。
這種方式可以確保您的網(wǎng)站可以通過 IPv4 和 IPv6 連接進(jìn)行訪問。例如,如果您使用的是第一個 listen 語句,那么只能使用 IPv4 地址連接到您的網(wǎng)站(例如,192.0.2.1),而如果您的服務(wù)器支持 IPv6,則使用 [::ffff:192.0.2.1] 進(jìn)行 IPv4 轉(zhuǎn)換。而如果您將其更改為僅使用 IPv6,那么僅支持 IPv6 的瀏覽器將無法訪問您的網(wǎng)站。
因此,為了使您的網(wǎng)站能夠通過 IPv4 和 IPv6 訪問,最好同時(shí)使用 listen 80; 和 listen [::]:80;。如果您認(rèn)為您的網(wǎng)站僅需要通過一個協(xié)議進(jìn)行訪問,請僅使用相應(yīng)的 listen 語句。
上述配置文件指定了一個新的虛擬主機(jī),其中“server_name”指定為您要托管的網(wǎng)站的名稱,例如“192.168.6.100”,“root”指定為您創(chuàng)建的網(wǎng)站根目錄,例如“/var/www/mysite”,并且“index”指定為默認(rèn)的網(wǎng)站文件名。
請注意,其余配置文件的內(nèi)容將保持不變,您無需更改默認(rèn)配置文件就可以進(jìn)行啟動和訪問
4.測試Nginx配置
![### [外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-xLCAypwn-1682698172218)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230428235429980.png)]](http://img.jbzj.com/file_images/article/202310/2023103116254435.png)
5.重啟Nginx
systemctl restart nginx
![[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-T0aPO36B-1682698172219)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230429000615507.png)]](http://img.jbzj.com/file_images/article/202310/2023103116254436.png)
3.可能遇到的問題
如果您在配置 Nginx 后仍無法訪問您的網(wǎng)站,則可能存在以下一些常見問題:
1.防火墻端口未打開
如果您正在使用 Linux 防火墻(如 firewalld 或 iptables),則您可能需要打開端口以便讓人們通過您的 Nginx 服務(wù)器訪問您的網(wǎng)站。例如,如果您正在監(jiān)聽端口 80,則可以使用以下命令打開該端口:
使用 firewalld(CentOS 7+ 系統(tǒng)):
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent sudo firewall-cmd --reload
使用 iptables:
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT sudo iptables-save > /etc/sysconfig/iptables
2.SELinux規(guī)則限制
如果您的操作系統(tǒng)安裝了 SELinux,則它可能會禁止 Nginx 訪問某些文件或端口。您可以使用以下命令禁用 SELinux:
sudo setenforce 0
此外,您也可以編輯 SELinux 的規(guī)則以允許 Nginx 訪問相應(yīng)的文件或端口,以免在禁用 SELinux 的情況下降低系統(tǒng)安全性。
3.其他端口或路徑?jīng)_突
如果您已經(jīng)將 Web 服務(wù)器配置在其他端口上,則必須將 Nginx 監(jiān)聽不同的端口。同理,如果您安裝了其他軟件或 Web 應(yīng)用程序,則可能會發(fā)生端口或路徑?jīng)_突。在這種情況下,您需要更改 Nginx 的配置或更改其它的服務(wù)配置以避免沖突。
4.檢查配置文件語法和錯誤
在修改 Nginx 配置文件時(shí),很容易犯語法或其他錯誤。您可以使用以下命令檢查 Nginx 配置文件的語法是否正確:
sudo nginx -t
如果您的配置文件存在語法錯誤,則輸出類似于以下內(nèi)容:
nginx: [emerg] unexpected "[" in /etc/nginx/conf.d/example.com.conf:8
請仔細(xì)檢查輸出錯誤信息,修復(fù)配置文件中的語法錯誤。
5.當(dāng)前網(wǎng)絡(luò)不可用
最后,確保您正在使用可訪問互聯(lián)網(wǎng)的網(wǎng)絡(luò),以免因網(wǎng)絡(luò)問題而無法訪問您的網(wǎng)站。如果您可以訪問其他網(wǎng)站,但無法訪問您自己的網(wǎng)站,則可能是由于 DNS 配置不正確導(dǎo)致的。在這種情況下,您可以暫時(shí)在您的本地計(jì)算機(jī)上修改 hosts 文件以嘗試直接連接到您的服務(wù)器。
到此這篇關(guān)于使用nginx部署前端項(xiàng)目的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)nginx部署前端項(xiàng)目內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解Nginx實(shí)戰(zhàn)之讓用戶通過用戶名密碼認(rèn)證訪問web站點(diǎn)
這篇文章主要介紹了詳解Nginx實(shí)戰(zhàn)之讓用戶通過用戶名密碼認(rèn)證訪問web站點(diǎn),有興趣的可以了解一下。2016-11-11
Nginx實(shí)現(xiàn)Nacos反向代理的項(xiàng)目實(shí)踐
在日常的web網(wǎng)站部署中,經(jīng)常會用到nginx反向代理,本文主要介紹了Nginx實(shí)現(xiàn)Nacos反向代理的項(xiàng)目實(shí)踐,Nginx實(shí)現(xiàn)Nacos反向代理的項(xiàng)目實(shí)踐2022-03-03
nginx利用lua語言實(shí)現(xiàn)軟waf的示例代碼
這篇文章主要介紹了nginx利用lua語言實(shí)現(xiàn)軟waf,文中通過代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-03-03
在Nginx服務(wù)器上配置Google反向代理的基本方法
這篇文章主要介紹了在Nginx服務(wù)器上配置Google反向代理的基本方法,文中使用到了SSL來加密反向代理,需要的朋友可以參考下2015-12-12

