溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何在CentOS7上搭建Nginx

發(fā)布時(shí)間:2021-08-18 21:14:20 來源:億速云 閱讀:325 作者:chen 欄目:服務(wù)器

這篇文章主要講解了“如何在CentOS7上搭建Nginx”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“如何在CentOS7上搭建Nginx”吧!

安裝前所需環(huán)境

Nginx安裝之前,需要環(huán)境:wget、gcc、pcre、openssl、zlib1,wget ,用于從外網(wǎng)上下載插件:

yum -y install wget

2,gcc:GCC(GNU Compiler Collection,GNU 編譯器套件),是由 GNU 開發(fā)的編程語言編譯器。GCC 原本作為 GNU  操作系統(tǒng)的官方編譯器,現(xiàn)已被大多數(shù)類 Unix 操作系統(tǒng)(如 Linux、BSD、Mac OS X 等)采納為標(biāo)準(zhǔn)的編譯器

yum install gcc-c++

3,pcre:PCRE(Perl Compatible Regular Expressions)安裝 ,它是一個(gè) Perl 庫,包括 perl  兼容的正則表達(dá)式庫。nginx 的 http 模塊使用 pcre 來解析正則表達(dá)式,所以需要在 linux 上安裝 pcre 庫

yum install -y pcre pcre-devel

4,openssl:它是一個(gè)強(qiáng)大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及 SSL  協(xié)議,并提供豐富的應(yīng)用程序供測(cè)試或其它目的使用; nginx 不僅支持 http 協(xié)議,還支持 https (即在 ssl 協(xié)議上傳輸 http ),所以需要在  linux 安裝 openssl 庫

yum install -y openssl openssl-devel

5,zlib:它提供了很多種壓縮和解壓縮的方式, nginx 使用 zlib 對(duì) http 包的內(nèi)容進(jìn)行 gzip ,所以需要在 linux 上安裝  zlib 庫

yum install -y openssl openssl-devel

Nginx 安裝

太不容易了,經(jīng)過上面的步驟,咱們終于將所需要的環(huán)境安裝好了,然后 Nginx 安裝走起

1 ,進(jìn)入一個(gè)目錄(隨便一個(gè)目錄就可以,用來存放下載的 Nginx 安裝包,在這里以進(jìn)入 /root 目錄為例,如果你用的 root  賬號(hào)登陸的,登陸進(jìn)來默認(rèn)就是 /root ,這也是為啥阿粉用這個(gè)目錄,比較懶嘛...)

進(jìn)入目錄命令: cd /root

下載 nginx 安裝包,本文用例 nginx1.10.3(最新版本可通過官網(wǎng) http://nginx.org/download 可查看)

下載命令:wget http://nginx.org/download/nginx-1.10.3.tar.gz

2,解壓 Nginx 的 tar 包

解壓命令:tar -zxvf nginx-1.10.3.tar.gz

3,查看是否解壓成功

命令: ls

如圖,可以看到解壓成功

如何在CentOS7上搭建Nginx

4,進(jìn)入剛解壓的的目錄

命令: cd nginx-1.10.3

進(jìn)行配置(在此將 Nginx 安裝指向 /usr/local/src/nginx/ 目錄下)

命令: ./configure --prefix=/usr/local/src/nginx/

如何在CentOS7上搭建Nginx

發(fā)現(xiàn)會(huì)有好多行信息出來,不要怕,是正常的信息

5,進(jìn)行編譯和安裝

命令: make && make install

如何在CentOS7上搭建Nginx

6,整個(gè)驗(yàn)證、編譯、安裝過程應(yīng)該不會(huì)報(bào)什么錯(cuò)誤,如果在上一過程中使用prefix設(shè)置了安裝目標(biāo)目錄,那么還需要在 /etc/profile  文件中設(shè)置環(huán)境變量(備注:環(huán)境變量一般指操作系統(tǒng)中用來指定操作系統(tǒng)運(yùn)行環(huán)境的一些參數(shù),相當(dāng)于設(shè)置了一個(gè)啟動(dòng)軟件(如 mysql/jdk  )等快速路徑,使用的時(shí)候很方便)

命令: vi /etc/profile

在配置文件中加入:

export NGINX_HOME=/usr/local/src/nginxexport PATH=$NGINX_HOME/sbin:$PATH

如何在CentOS7上搭建Nginx

因?yàn)榘⒎蹃y倒騰的東西挺多的,所以這里的配置文件不需要一定要和阿粉的一樣

7,使環(huán)境變量生效

命令:source /etc/profile

8,檢查是否安裝成功:

進(jìn)入到 etc 目錄(cd /etc)中執(zhí)行命令: nginx –t ,若不正確則會(huì)給出相應(yīng)的錯(cuò)誤提示

我這里給出的是正確的提示,說明咱們安裝對(duì)了

如何在CentOS7上搭建Nginx

9,對(duì)Nginx配置文件進(jìn)行配置,Nginx配置文件的位置: /usr/local/src/nginx/conf/nginx.conf  (具體位置要看你自己的):

vi /usr/local/src/nginx/conf/nginx.conf

如何在CentOS7上搭建Nginx

10,將配置文件修改為配置文件在 Nginx 安裝目錄下的 conf 中的 nginx.conf ,命令:

/usr/local/src/nginx/sbin/nginx -c /usr/local/src/nginx/conf/nginx.conf

11,啟動(dòng)nginx, 命令:

nginx

12,測(cè)試,啟動(dòng) Nginx 的情況下在外部用瀏覽器訪問剛才在配置文件中配置的地址 ,如圖所示,即為成功

如何在CentOS7上搭建Nginx

可能出現(xiàn)的問題:

在外部使用瀏覽器時(shí),訪問地址有可能訪問不到。

問題原因:沒有開放80端口,或者防火墻未關(guān)閉

基于安全考慮,建議選擇開放80端口

1,開放80端口(請(qǐng)注意,要確保此時(shí)的防火墻是打開的,否則進(jìn)行此步驟是沒有意義的):

開端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent 重啟防火墻:systemctl restart firewalld.service   命令含義:   --zone #作用域   --add-port=80/tcp  #添加端口,格式為:端口/通訊協(xié)議   --permanent   #永久生效,沒有此參數(shù)重啟后失效

或者直接來個(gè)干脆的,將防火墻關(guān)掉:

service firewalld stop

這兩個(gè)操作,選擇其中一個(gè)即可。至此,Nginx安裝教程結(jié)束。

設(shè)置 Nginx 開機(jī)自啟

在實(shí)踐過程中,發(fā)現(xiàn)如果將機(jī)器關(guān)閉之后,再次打開,需要再次手動(dòng)開啟,才能訪問到 Nginx  ,對(duì)于追求高效率的我們來說,這一點(diǎn)肯定是無法忍受的,所以接下來講一講如何設(shè)置 Nginx 開機(jī)自啟:

1,進(jìn)入到 /lib/systemd/system/ 目錄下,命令:

cd /lib/systemd/system/

2,創(chuàng)建文件,命令:

vi nginx.service

將下面內(nèi)容,復(fù)制到該文件中即可:

[Unit] Description=nginx  After=network.target   [Service]  Type=forking  ExecStart=/usr/local/src/nginx/sbin/nginx ExecReload=/usr/local/src/nginx/sbin/nginx reload ExecStop=/usr/local/src/nginx/sbin/nginx quit PrivateTmp=true   [Install]  WantedBy=multi-user.target

Description: 描述服務(wù) After: 描述服務(wù)類別

[Service]服務(wù)運(yùn)行參數(shù)的設(shè)置 Type=forking 是后臺(tái)運(yùn)行的形式 ExecStart 為服務(wù)的具體運(yùn)行命令 ExecReload  為重啟命令 ExecStop 為停止命令 PrivateTmp=True 表示給服務(wù)分配獨(dú)立的臨時(shí)空間  注意一點(diǎn):[Service]的啟動(dòng)、重啟、停止命令全部要求使用絕對(duì)路徑

[Install]運(yùn)行級(jí)別下服務(wù)安裝的相關(guān)設(shè)置,可設(shè)置為多用戶,即系統(tǒng)運(yùn)行級(jí)別為 3

3,保存退出該文件之后,執(zhí)行該文件,使 Nginx 開機(jī)自啟生效,執(zhí)行命令:

systemctl enable nginx.service

如何在CentOS7上搭建Nginx

4,重啟一下虛擬機(jī),看看有沒有設(shè)置成功~

阿粉在這里為了表示上面可以設(shè)置開機(jī)自啟成功,在虛擬機(jī)剛啟動(dòng)之后就查看了一下 nginx 的狀態(tài),可以看到是 running

如何在CentOS7上搭建Nginx

感謝各位的閱讀,以上就是“如何在CentOS7上搭建Nginx”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)如何在CentOS7上搭建Nginx這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI