需要保證Linux系統聯網,nginx服務器的底層結構需要在線安裝。
安裝gcc gcc是用來編譯下載下來的nginx源碼:
yum install gcc-c++
安裝pcre和pcre-devel :
PCRE(Perl Compatible Regular Expressions) 是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx 的 http 模塊使用 pcre 來解析正則表達式,pcre-devel 是使用 pcre 開發的一個二次開發庫。
yum install -y pcre pcre-devel
安裝zlib
zlib提供了很多壓縮和解方式,nginx需要zlib對http進行gzip
yum install -y zlib zlib-devel
安裝openssl
openssl是一個安全套接字層密碼庫,nginx要支持https,需要使用openssl
yum install -y openssl openssl-devel
[root@localhost /]# yum install -y openssl openssl-devel
已加載插件:langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
軟件包 1:openssl-1.0.1e-42.el7_1.9.x86_64 已安裝並且是最新版本
正在解決依賴關係
--> 正在檢查事務
---> 軟件包 openssl-devel.x86_64.1.1.0.1e-42.el7_1.9 將被 安裝
--> 正在處理依賴關係 krb5-devel(x86-64),它被軟件包 1:openssl-devel-1.0.1e-42.el7_1.9.x86_64 需要
--> 正在檢查事務
---> 軟件包 krb5-devel.x86_64.0.1.13.2-10.el7 將被 安裝
--> 正在處理依賴關係 keyutils-libs-devel,它被軟件包 krb5-devel-1.13.2-10.el7.x86_64 需要
--> 正在處理依賴關係 libcom_err-devel,它被軟件包 krb5-devel-1.13.2-10.el7.x86_64 需要
--> 正在處理依賴關係 libselinux-devel,它被軟件包 krb5-devel-1.13.2-10.el7.x86_64 需要
--> 正在處理依賴關係 libverto-devel,它被軟件包 krb5-devel-1.13.2-10.el7.x86_64 需要
--> 正在檢查事務
---> 軟件包 keyutils-libs-devel.x86_64.0.1.5.8-3.el7 將被 安裝
---> 軟件包 libcom_err-devel.x86_64.0.1.42.9-7.el7 將被 安裝
---> 軟件包 libselinux-devel.x86_64.0.2.2.2-6.el7 將被 安裝
--> 正在處理依賴關係 libsepol-devel >= 2.1.9-1,它被軟件包 libselinux-devel-2.2.2-6.el7.x86_64 需要
--> 正在處理依賴關係 pkgconfig(libsepol),它被軟件包 libselinux-devel-2.2.2-6.el7.x86_64 需要
---> 軟件包 libverto-devel.x86_64.0.0.2.5-4.el7 將被 安裝
--> 正在檢查事務
---> 軟件包 libsepol-devel.x86_64.0.2.1.9-3.el7 將被 安裝
--> 解決依賴關係完成
依賴關係解決
================================================================================================
Package 架構 版本 源 大小
================================================================================================
正在安裝:
openssl-devel x86_64 1:1.0.1e-42.el7_1.9 yum 1.2 M
爲依賴而安裝:
keyutils-libs-devel x86_64 1.5.8-3.el7 yum 37 k
krb5-devel x86_64 1.13.2-10.el7 yum 649 k
libcom_err-devel x86_64 1.42.9-7.el7 yum 30 k
libselinux-devel x86_64 2.2.2-6.el7 yum 174 k
libsepol-devel x86_64 2.1.9-3.el7 yum 71 k
libverto-devel x86_64 0.2.5-4.el7 yum 12 k
事務概要
================================================================================================
安裝 1 軟件包 (+6 依賴軟件包)
總下載量:2.1 M
安裝大小:4.2 M
Downloading packages:
------------------------------------------------------------------------------------------------
總計 14 MB/s | 2.1 MB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安裝 : libcom_err-devel-1.42.9-7.el7.x86_64 1/7
正在安裝 : libsepol-devel-2.1.9-3.el7.x86_64 2/7
正在安裝 : libselinux-devel-2.2.2-6.el7.x86_64 3/7
正在安裝 : libverto-devel-0.2.5-4.el7.x86_64 4/7
正在安裝 : keyutils-libs-devel-1.5.8-3.el7.x86_64 5/7
正在安裝 : krb5-devel-1.13.2-10.el7.x86_64 6/7
正在安裝 : 1:openssl-devel-1.0.1e-42.el7_1.9.x86_64 7/7
驗證中 : 1:openssl-devel-1.0.1e-42.el7_1.9.x86_64 1/7
驗證中 : keyutils-libs-devel-1.5.8-3.el7.x86_64 2/7
驗證中 : libverto-devel-0.2.5-4.el7.x86_64 3/7
驗證中 : libsepol-devel-2.1.9-3.el7.x86_64 4/7
驗證中 : krb5-devel-1.13.2-10.el7.x86_64 5/7
驗證中 : libcom_err-devel-1.42.9-7.el7.x86_64 6/7
驗證中 : libselinux-devel-2.2.2-6.el7.x86_64 7/7
已安裝:
openssl-devel.x86_64 1:1.0.1e-42.el7_1.9
作爲依賴被安裝:
keyutils-libs-devel.x86_64 0:1.5.8-3.el7 krb5-devel.x86_64 0:1.13.2-10.el7
libcom_err-devel.x86_64 0:1.42.9-7.el7 libselinux-devel.x86_64 0:2.2.2-6.el7
libsepol-devel.x86_64 0:2.1.9-3.el7 libverto-devel.x86_64 0:0.2.5-4.el7
完畢!
下載nginx
wget http://nginx.org/download/nginx-1.15.10.tar.gz
切換到 / 根目錄下,創建nginx目錄
使用 tar -xvf 命令,將 nginx-1.15.10.tar.gz 解壓到 nginx目錄下
編譯安裝
使用whereis命令查找一下nginx的文件路徑,切換到nginx目錄下並編輯 nginx.conf 主配置文件
重啓 nginx 服務,使用ps -ef查看一下nginx的啓動情況。當重啓nginx服務出現沒有nginx.pid文件報錯時,使用nginx -c的參數指定nginx.conf文件的位置(還有一種可能是nginx.conf 的nginx.pid 被註釋了,進入nginx.conf主配置文件看一下nginx.pid前面是否有#號)
在Linux系統裏面打開瀏覽器輸入nginx配置文件中指定的IP地址和端口號
注意:如果不更改nginx配置文件的80端口,那麼通過瀏覽器訪問的時候會和Apache服務器的端口有衝突,爲了避免發生這類事情,在配置nginx服務器的時候將配置文件中的80端口改成8089端口,訪問192.168.203.181默認訪問的是80端口的Apache服務器。
切換到 /usr/local/nginx/sbin目錄下可以對nginx進行重啓、關閉和開啓操作
當啓動nginx服務出現一下報錯時,是因爲80端口被佔用,將Linux系統的瀏覽器關閉之後,查看並殺死80端口的服務進程(一定要把瀏覽器關閉,不然進程tcp6的80端口會一直被佔用並且殺不死)