nginx,乙個被貼滿,高效能,低消耗,低成本標籤的web伺服器。想必大家都早有耳聞。我是在接觸了公司的伺服器的時候,才開始真正接觸它。本文從nginx 和傳統專案的區別 和 nginx的安裝部署兩個方面來了解它。
在傳統專案中,我們一般通過在web專案的根目錄下建立乙個用於儲存的images資料夾來方便管理。但隨著業務和規模的逐漸擴大,一台伺服器已經無法滿足我們的需求,我們可以通過搭建伺服器集群來處理高併發的場景。
好景不長,集群剛搭好,就有使用者反饋,為什麼時而有,時而沒有? 這是因為:儲存在 伺服器/web根目錄/images資料夾 中,當使用者在上傳的時候,只將傳給了一台伺服器,在獲取時,可能呼叫了其他伺服器。這樣會出現該問題。
解決這個問題很簡單,就是把單獨放在乙個伺服器。如果選擇apache的tomcat伺服器,在處理業務邏輯簡單的伺服器中似乎顯得有些笨重。一款高效能,低成本輕量級web伺服器 nginx 脫穎而出。不僅如此它還是一款反向**伺服器和電子郵件**伺服器。
但是,nginx是調皮的,它不會讓我們如此順利
踩坑?不存在的,我踩過的坑,不允許讓你們再踩。它是我滴!
第乙個問題,是因為 nginx 解壓編譯依賴 gcc 環境造成的。
[root@itdragon ~]# yum install gcc-c++
第二個問題,是因為 nginx 的 http 模組使用 pcre 來解析正規表示式
[root@itdragon ~]# yum install -y pcre pcre-devel
第三個問題,是因為 nginx 使用 zlib 對 http 包的內容進行 gzip 操作
[root@itdragon ~]# yum install -y zlib zlib-devel
第四個問題,建議安裝,nginx 它是支援https 協議的
[root@itdragon ~]# yum install -y openssl openssl-devel
第五個問題,是很常見的埠占用,修改 nginx.config 檔案中的埠即可。 /port,快速找到埠配置的地方。[insert] 開啟編輯模式。[esc] :wq 退出儲存
[root@itdragon sbin]# ./nginx
nginx: [emerg] bind() to 0.0.0.0:88 failed (98: address already in use)
[root@itdragon sbin]# vim ../conf/nginx.conf
server {
listen 88;
server_name localhost;
[root@itdragon sbin]# ./nginx
若出現 loaded plugins: fastestmirror 不是問題的問題。可以通過修改fastestmirror.conf 檔案,這是一種不負責任的做法,如果自己玩 nginx 可以這樣做。如果是實際開發,就老老實實的按照提示來做。
[root@plugins ~]# vim /etc/yum/pluginconf.d/fastestmirror.conf
enabled=0
[root@plugins ~]# vim /etc/yum.conf
plugins=0
[root@plugins ~]# yum clean dbcache
Nginx安裝部署
一般我們都需要先裝pcre,zlib,前者為了重寫rewrite,後者為了gzip壓縮。1.選定原始碼目錄 選定目錄 usr local cd usr local 2.安裝pcre庫 cd usr local wget tar zxvf pcre 8.21.tar.gz cd pcre 8.21 c...
Nginx安裝部署
nginx engine x 是乙個高效能的http 和反向 伺服器,也是乙個imap pop3 smtp 伺服器。nginx 是由igor sysoev 為俄羅斯訪問量第二的rambler.ru 站點開發的,第乙個公開版本0.1.0發布於2004年10月4日。其將源 以類bsd許可證的形式發布,因...
Nginx安裝部署
nginx engine x 是乙個高效能的http 和反向 伺服器,也是乙個imap pop3 smtp 伺服器。nginx 是由igor sysoev 為俄羅斯訪問量第二的rambler.ru 站點開發的,第乙個公開版本0.1.0發布於2004年10月4日。其將源 以類bsd許可證的形式發布,因...