Nginx學習經驗總結
1.簡介
Nginx是一個高性能的HTTP和反向代web理服務器,相應更快,占用內存比較小,并發能力強,官網稱可以處理五萬個并發連接請求。
2.作用
2.1 反向代理
正向代理是代理客戶端的,幫助客戶端去請求服務端;而反向代理是代理服務端的,當客戶端請求時可以無感知的訪問服務器資源以及讓服務更好的部署上線。
2.2 負載均衡
負載均衡的策略有兩種:一種是擴展策略,一種是內置策略。內置策略為輪詢、加權輪詢、iphash(可以解決session不共享的問題,是對客戶端的請求的ip進行hash操作,然后根據hash計算結果將同一個ip分配到同一個服務器上進行處理)。
3.安裝
官網下載網址:https://nginx.org/en/download.html
下載時最好選擇穩定版本下載即Stable version。
3.1 Windows安裝和使用
其中Windows下載有Windows標識的下載后是一個zip包,通過在非中文目錄下解壓縮后執行nginx.exe即可使用,由于conf中默認配置了監聽80端口,本地測試是否啟動成功,可以http://localhost/進行訪問如果訪問到頁面顯示welcome nginx即為訪問成功。
3.2 Linux安裝和使用
3.2.1 查看是否已安裝
首先確保查看是否有nginx,執行指令whereis nginx,或者直接輸入nginx,如果返回 not found即為沒有安裝過。
3.2.2 安裝
3.2.2.1 首先將下載好的nginx-1.20.2.tar.gz壓縮包放到服務器上,然后執行解壓縮指令tar -zxvf nginx-1.20.2.tar.gz
3.2.2.2 執行配置文件,首先cd進解壓好的nginx文件中,然后執行./configure(綠色可執行文件)
如果出現錯誤為:./configure: error: the HTTP rewrite module requires the PCRE library.
安裝pcre-devel解決問題
yum -y install pcre-devel
如果出現出現錯誤提示:./configure: error: the HTTP cache module requires md5 functions
from OpenSSL library.?? You can either disable the module by using
--without-http-cache option, or install the OpenSSL library into the system,
or build the OpenSSL library statically from the source with nginx by using
--with-http_ssl_module --with-openssl=
解決辦法:
yum -y install openssl openssl-devel
3.2.2.3 執行make指令進行安裝
3.2.2.4 執行手動安裝make install
3.2.2.5 完成安裝,可以通過whereis nginx找到安裝到了usr/local/nginx中,在其中是sbin中執行文件,可以通過./nginx進行執行,如果執行成功會沒有任何日志,還可以通過服務器ip:80或者服務器ip進行訪問,如果出現welcome nginx即為訪問成功。
3.3 指令
3.3.1 啟動 ./nginx
3.3.2 停止 ./nginx -s? stop 會將進程強制停止
3.3.3 安全退出 ./nginx -s quit 會確保進程是安全的才會一項一項的停止
3.3.4重新加載配置文件(經常會用) ./nginx -s reload
3.3.5 查看nginx進程 ps aux | grep nginx
3.3.6 補充:如何查看端口是否開放
3.3.6.1 開啟防火墻 service firewalld start
3.3.6.2 重啟防火墻 service firewalld restart
3.3.6.3 關閉防火墻 service firewalld stop
3.3.6.3 查看防火墻規則 firewalld -cmd --list-all
3.3.6.4 查詢端口是否開放 firewall-cmd --query-port=8080/tcp
3.3.6.5 開放80端口 firewall-cmd --permanent --add-port=80/tcp
3.3.6.6 移除端口 firewall-cmd --permanent --remove-port=8080/tcp
3.3.6.7 重啟防火墻(修改配置后重啟防火墻)firewall-cmd --reload
3.3.6.8參數
3.3.6.8.1 firewall-cmd 是Linux提供的操作firewall 的一個工具;
3.3.6.8.2 --permanent表示設置為持久;
3.3.6.8.3--add-port表示添加的端口
3.4 nginx構成
3.4.1 全局配置 比如指定用戶 指定進程等
3.4.2 events配置 比如最大連接數,監聽事件
3.4.3 http配置
3.4.3.1 http配置中的全局配置 比如靜態文件
3.4.3.2 配置server不同的服務
http默認端口是80
https默認端口443
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。