摘要:在系統下,雖然可以通過工具一鍵下載,但是當我們需求安裝第三方模塊開啟某些隱藏功能的時候,就需要我們自己手動下載源碼,并編譯安裝來定制自己的。本文主要演示如何在系統下源碼編譯安裝,并安裝第三方模塊。
在 CentOS 系統下,雖然可以通過 Yum 工具一鍵下載 Nginx ,但是當我們需求安裝第三方模塊、開啟某些隱藏功能的時候,就需要我們自己手動下載源碼,并編譯安裝 Nginx 來定制自己的 Nginx 。本文主要演示如何在 CentOS 系統下源碼編譯安裝 Nginx,并安裝第三方模塊。
準備工作 1. 安裝編譯工具、依賴包當前系統為 CentOS7 64 位,首先安裝缺少的依賴包:
yum update yum -y install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel yum -y install unzip patch # 安裝第三方模塊會使用到
這些軟件也可以通過下載源碼來編譯安裝,只是要注意編譯時默認安裝的目錄,確保在安裝 Nginx 時正確指定相關依賴的安裝目錄。
2. 新建匿名用戶和用戶組新建的用戶組和用戶主要是在編譯配置的時候指定 Nginx 運行的用戶和用戶組:
groupadd -r nginx useradd -s /sbin/nologin -g nginx -r nginxNginx 編譯安裝 1. 下載源碼包
# 下載最新穩定版本 wget http://nginx.org/download/nginx-1.12.2.tar.gz # 下載負載均衡健康檢查的第三方模塊 wget https://github.com/yaoweibin/nginx_upstream_check_module/archive/master.zip # 重命名 mv master.zip nginx_upstream_check_module.zip2. 解壓
tar -zxvf nginx-1.12.2.tar.gz unzip nginx_upstream_check_module.zip3. 配置編譯參數
集成 nginx_upstream_check_module 第三方模塊至 Nginx 中:
cd nginx-1.12.2 patch -p1 < /usr/local/src/nginx_http_upstream_check_module/check_1.12.1+.patch # 安裝對應版本的補丁
配置 Nginx 編譯參數:
./configure --prefix=/usr/local/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --add-module=../nginx_upstream_check_module # --with-http_gunzip_module 開啟隱藏模塊 # --add-module= 安裝第三發模塊4. 編譯并安裝
make && make install5. 檢查是否安裝成功
# 查看 Nginx 版本號 nginx -v # 查看 Nginx 配置信息是否正確 nginx -t設置開機啟動系統服務 1. 建立服務文件
vim /lib/systemd/system/nginx.service2. 配置信息
[Unit] Description=nginx - high performance web server Documentation=http://nginx.org/en/docs/ After=network-online.target remote-fs.target nss-lookup.target Wants=network-online.target [Service] Type=forking PIDFile=/run/nginx.pid ExecStartPost=/bin/sleep 0.1 ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID [Install] WantedBy=multi-user.target3. 修改文件權限
chmod 754 /lib/systemd/system/nginx.service4. 設置為開機啟動,同時防火墻開啟80端口
# 啟動 Nginx systemctl start nginx # 設置開機啟動 systemctl enable nginx # 防火墻開啟80端口 firewall-cmd --zone=public --add-port=80/tcp --permanent # 重啟防火墻 systemctl restart firewalld.service
參考文章:
nginx 服務器安裝及配置文件詳解
CentOS7.0 下編譯安裝Nginx 1.10.0
CentOS 7自定義開機啟動系統服務
nginx使用yum/編譯安裝,心跳檢查模塊
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/39868.html
摘要:網上看別人寫的服務器配置,有的是源碼包安裝的,有的時安裝的。通過源碼包編譯安裝的軟件,通常都放在包名路徑下。正則表達式使用在指令和模塊中。 網上看別人寫的 nginx 服務器配置 ,有的是源碼包安裝的,有的時 yum 安裝的。如果是新手,可能會有疑問,這兩種安裝方式有什么區別?我應該使用哪種方式?系統里可以兩個都安裝可以嗎?怎么卸載?等等問題,那么在這里,我做下總結,詳細介紹下這兩種方...
摘要:下面的參數是根據需要在壓縮或解壓檔案時可選的。備注了解過程省略這里添加了模塊生成文件使用系統庫沒有用到庫使用系統庫這些路徑是要了解的這是配置文件 資源1: 官網: http://nginx.org資源2: 官方學習資源, ????wiki,???? nginx安裝之wiki介紹資源3: 編譯選項列表資源4: nginx源碼下載列表,當前Stable版本是nginx-1.14.0,資源5...
摘要:下面的參數是根據需要在壓縮或解壓檔案時可選的。備注了解過程省略這里添加了模塊生成文件使用系統庫沒有用到庫使用系統庫這些路徑是要了解的這是配置文件 資源1: 官網: http://nginx.org資源2: 官方學習資源, ????wiki,???? nginx安裝之wiki介紹資源3: 編譯選項列表資源4: nginx源碼下載列表,當前Stable版本是nginx-1.14.0,資源5...
閱讀 1074·2021-11-16 11:45
閱讀 2708·2021-09-27 13:59
閱讀 1314·2021-08-31 09:38
閱讀 3142·2019-08-30 15:52
閱讀 1315·2019-08-29 13:46
閱讀 2085·2019-08-29 11:23
閱讀 1631·2019-08-26 13:47
閱讀 2476·2019-08-26 11:54