在linux下有比較多的web代理軟件,如nginx、squid等,比較流行的是nginx,相比于window下的iis,或者java專用的tomcat,nginx更叫小巧易用。

nginx除了可以在linux上運行外,還有window的移植版,下面主要是介紹如何在linux下安裝配置nginx代理服務器。
說到安裝軟件,我們習慣了在window上雙擊exe可執(zhí)行文件直接安裝,而在linux下軟件安裝的形式不太一樣。linux的軟件安裝大致可以分為下面三種
通過yum安裝
通過源碼安裝
通過rpm安裝
三種安裝方式各有差異,yum形式類似于npm安裝,簡單快捷,自動安裝相關(guān)依賴;源碼安裝需要下載源碼然后本機編譯,可以實現(xiàn)個性化定制,適用于對linux了解較多的進階用戶使用;rpm安裝與yum類似,只不過安裝的模塊來源不是yum官方鏡像,而是本地資源;
這里采用的是用yum形式安裝nginx服務器
1、安裝前的準備
在安裝前,我們需要首先檢查一下本機是否已經(jīng)安裝了nginx,我們查看一下nginx安裝在什么路徑就可以了,命令也很簡單
whereis? ? nginx? ? ? //nginx在哪里?
除了這句外還可以輸入
which? ?nginx
這兩句話都可以找到你的服務器上安裝的nginx在哪里。如果沒有安裝過,回車后會提示找不到相關(guān)路徑,如果找到了就會返回所在的目錄(一般是在/usr/local/sbin下)

如果沒有安裝,那么接著看第二步,當然如果想卸載重裝請看最后一步
2、安裝nginx
安裝方式特別簡單,只需要輸入yum install? nginx即可,類似于node下安裝模塊一下? npm? install? xxx
yum? ?install? ?nginx
然后等待下載,下載過程中會自動安裝最新版的nginx,并且在安裝前提示是否確定安裝,這時候輸入y或者yes即可(別直接回車,因為默認是N)
輸入y? ? (確定安裝)
如果在安裝過程中說權(quán)限不足,通過sudo形式即可:sudo? ? yum? ?install? ?nginx
安裝成功后提示nginx已經(jīng)安裝成功,默認情況下安裝目錄是/usr/sbin/nginx
/usr是一個特別重要的的目錄,可以理解從window下的C:\Program Files
這時候我們通過which或者whereis可以查詢到nginx的安裝目錄

PS:由于yum默認把nginx安裝到/usr/sbin下,這就相當于直接配置了系統(tǒng)變量,不需要在進行軟連接配置了,可以直接使用。
3、啟動nginx
nginx安裝成功后不會自動啟動的,需要我們?nèi)藶槿?,啟動命令如?/p>
systemctl? ?start? ?nginx
systemctl,就是執(zhí)行系統(tǒng)操作,后面會經(jīng)常用到
當然機智的你已經(jīng)猜到了重啟和停止是什么命令了
systemctl? ?restart? ?nginx
systemctl? ?stop? ?nginx
當然為了保證nginx的可持續(xù)提供服務,我建議再添加一句命令讓nginx開機自啟
systemctl? ?enable? ?nginx
需要提醒一下的是,上面的命令在任意一個目錄都是可以執(zhí)行的,因為nginx已經(jīng)配置到全局了,而下幾篇介紹的nodejs、npm等就不一定都能執(zhí)行了。
啟動成功后我們根據(jù)服務器ip(或者虛擬機ip),在瀏覽器中輸入ip就可以看到相應信息了

4、修改配置
在上一步我們啟動nginx后在80端口可以看到這個默認信息,那么要怎么修改呢?其實我們只需要修改一下nginx的配置文件可以了
補充一個知識點,/ect是linux下專門用來放配置文件的一個目錄,我們通過whereis? nginx也可以知道nginx的配置在/ect/nginx/下

我們先cd進/ect/nginx目錄(cd的時候前面加上/表示系統(tǒng)根目錄,~表示用戶根目錄)
然后我們查看一下該文件夾下有什么文件

我們的目標文件是nginx.conf,然后我們通過vim打開nginx.conf

我們可以看到80端口對應的資源是/usr/share/nginx/html,這是一個nginx自帶的一個html文件,也就是前面我們看到的那個頁面。我們通過添加server節(jié)點就可以添加不同的網(wǎng)站,如下圖:

當然這里你不需要和我一樣添加,退出vim就可以了,因為我們現(xiàn)在還不需要修改。
什么?不會退出?
其實vim初看會和我們平常的編輯器不太一樣,其實我們只需要記住兩個模式,三個命令就可了
兩個模式:
工作模式
命令模式
三個命令:
:q!? ? ?不保存強制退出
:w? ? ? ?保存
:wq? ? 保存并退出
工作模式下同時插入字符,修改內(nèi)容;命令模式下可以保存文檔,退出編輯
vim模式通過esc鍵切換,當?shù)撞坎皇恰?--insert----”后,輸入:q!? ?即可退出
如果需要修改往往是修改nginx.conf的靜態(tài)資源指向和端口監(jiān)聽
PS:這一步可以不做修改,只是簡單看一下配置
5、部署網(wǎng)站
假設你已經(jīng)在linux服務器上已經(jīng)有了網(wǎng)站代碼,我們可以通過修改nginx.conf來進行部署網(wǎng)站,如網(wǎng)站資源在/www/vue-base-demo/上,我們希望監(jiān)聽8080端口,那么我們在nginx.conf上添加一個server節(jié)點(在之前的80端口server節(jié)點后)
# vue最小管理系統(tǒng)配置(后臺服務3000端口)
? ? server {
? ? ? ? listen? ? ? 8080;
? ? ? ? root? ? ? ? /www/vue-base-demo/;
? ? ? ? index? ? ? ? index.html;
? ? ? ? location / {}
? ? }
然后我們重啟nginx
systemctl? ? resstart? ?nginx
這時候配置就會生效,在8080端口就可以訪問到我們希望的頁面了(后續(xù)可以添加域名指向)

至于如何上傳文件到linux服務器上,可以使用pscp.exe上傳,也可以使用git克隆
需要注意兩點:
第一:修改配置后需要重啟nginx,否者不會生效
第二:網(wǎng)站資源不要放在沒有權(quán)限的目錄下,如/root,建議在根目錄下新建一個/www目錄專門放在網(wǎng)站
都這里通過yum安裝和部署nginx就結(jié)束了。
6、卸載nginx
當然了,在nginx配置失敗的前提下,或者就是報錯無法啟動,又或者其他原因,不妨把它卸載重來。和npm類似,卸載非常簡單,只需要一句命令
yum? ?remove? ?nginx
這就卸載成功了,可以通過which? nginx或whereis? nginx來查看。
傳送門:《linux入門-nodejs的安裝及配置》