nginx 教學 : 基本指令操作( 持續更新中… )

nginx 教學 : 基本指令操作 大綱

  1. nginx 伺服器 啟用、停止與重新載入設定
  2. nginx.conf 檔案結構
  3. 設定靜態內容預設路徑
  4. 設定一個簡單的代理伺服器
  5. 設定FastCGI的代理功能

nginx 的運作是基於 nginx.conf 檔案的內容,一般而言預設路徑如下:

  • /usr/local/nginx/conf
  • /etc/nginx
  • /usr/local/etc/nginx

nginx 伺服器 啟用、停止與重新載入設定

我們可以使用以下指令,對 nginx 進行操作

$ nginx -s signal

在 signal 的位置,我們可以填入這些內容:

  • stop — 快速關閉
  • quit — 正常關閉
  • reload — 重新讀取設定
  • reopen — 重新開啟記錄檔

比方說,我們現要要結束當前 nginx 的工作排程,我們便可以輸入以下指令:

$ nginx -s stop

注意! 此指令需在 nginx 「啟動的狀態下」,方可執行。

當我們對 nginx.conf 設定完成變更後,我們就必須執行 reload 指令,讓伺服器可以採用最新的設定。語法如下:

$ nginx -s reload

在輸入此指令之後,首先會檢查 nginx.conf 的內容正確性,如設定的內容無誤,在重新讀取完成之後, nginx 的運作便會使用新的設定。反之,如果配置文件內容有誤,所做的內容變更便不會生效,仍會維持變成前原有的設定執行。

其他指令

查詢 nginx 使用中的排程

$ ps -ax | grep nginx

關閉特定排程(1628 為假設的排程序號 )

$ kill -s QUIT 1628

 

nginx.conf 檔案結構

在 nginx.conf 文件中,內容分為「指令」與「模組」兩種內容。在指令的部分需填入對應的參數與空格,最後則用分號( ; )做結尾,而 模組 的部分則是以大括號 {} 做區分,在 {} 內部我們可以額外新增所需的「指令」與「模組」,來擴充其功能。在程式註解的部分,我們只需在需註解的段落前,加入 # 符號即可。

接下來我們來示範如何配置一個靜態網頁的路徑,在範例中我們需要將兩個不同的靜態內容配置到伺服器上的 http 區塊內,分別為/data/www (HTML 文件) and/data/images (圖形)。首先我們開啟 nginx.conf 文件,並找到下列模組,並把它註解掉:

http{

server { }

}

配置第一個靜態內容區塊至 server 內:

location / {

root /data/www;

}

配置第二個靜態內容區塊至 server 內:

location /images/ {

root /data;

}

最終完成內容如下:

server {

location / {

root /data/www;

}

location /images/ {

root /data;

}

}

重新讀取設定

$ nginx -s reload

設定靜態內容預設路徑

設定一個簡單的代理伺服器

設定FastCGI的代理功能

發表迴響