Nginx面試中最常見的18道題 抱佛腳必備

Nginx的併發能力在同類型網頁服務器中的表現,相對而言是比較好的,因此受到了很多企業的青睞,我國使用Nginx網站的知名用戶包括騰訊、淘寶、百度、京東、新浪、網易等等。Nginx是網頁服務器運維人員必備技能之一,下面為大家整理了一些比較常見的Nginx相關面試題,僅供參考:

1、請解釋一下什麼是Nginx?


Nginx是一個web服務器和反向代理服務器,用於HTTP、HTTPS、SMTP、POP3和IMAP協議。

2、請列舉Nginx的一些特性。


Nginx服務器的特性包括:

反向代理/L7負載均衡器

嵌入式Perl解釋器

動態二進制升級

可用於重新編寫URL,具有非常好的PCRE支持

3、請列舉Nginx和Apache 之間的不同點

Nginx面試中最常見的18道題 抱佛腳必備


4、請解釋Nginx如何處理HTTP請求。


Nginx使用反應器模式。主事件循環等待操作系統發出準備事件的信號,這樣數據就可以從套接字讀取,在該實例中讀取到緩衝區並進行處理。單個線程可以提供數萬個併發連接。

5、在Nginx中,如何使用未定義的服務器名稱來阻止處理請求?


只需將請求刪除的服務器就可以定義為:

Server {listen 80;server_name “ “ ;return 444;
}

這裡,服務器名被保留為一個空字符串,它將在沒有“主機”頭字段的情況下匹配請求,而一個特殊的Nginx的非標準代碼444被返回,從而終止連接。

6、 使用“反向代理服務器”的優點是什麼?


反向代理服務器可以隱藏源服務器的存在和特徵。它充當互聯網雲和web服務器之間的中間層。這對於安全方面來說是很好的,特別是當您使用web託管服務時。

7、請列舉Nginx服務器的最佳用途。


Nginx服務器的最佳用法是在網絡上部署動態HTTP內容,使用SCGI、WSGI應用程序服務器、用於腳本的FastCGI處理程序。它還可以作為負載均衡器。

8、請解釋Nginx服務器上的Master和Worker進程分別是什麼?


Master進程:讀取及評估配置和維持

Worker進程:處理請求

9、請解釋你如何通過不同於80的端口開啟Nginx?


為了通過一個不同的端口開啟Nginx,你必須進入/etc/Nginx/sites-enabled/,如果這是默認文件,那麼你必須打開名為“default”的文件。編輯文件,並放置在你想要的端口:

Like server { listen 81; }

10、請解釋是否有可能將Nginx的錯誤替換為502錯誤、503?


502 =錯誤網關

503 =服務器超載

有可能,但是您可以確保fastcgi_intercept_errors被設置為ON,並使用錯誤頁面指令。

Location / {fastcgi_pass 127.0.01:9001;fastcgi_intercept_errors on;error_page 502 =503/error_page.html;#…}

11、在Nginx中,解釋如何在URL中保留雙斜線?


要在URL中保留雙斜線,就必須使用merge_slashes_off;

語法:merge_slashes [on/off]

默認值: merge_slashes on

環境: http,server

12、請解釋ngx_http_upstream_module的作用是什麼?


ngx_http_upstream_module用於定義可通過fastcgi傳遞、proxy傳遞、uwsgi傳遞、memcached傳遞和scgi傳遞指令來引用的服務器組。

13、請解釋什麼是C10K問題?


C10K問題是指無法同時處理大量客戶端(10,000)的網絡套接字。

14、請陳述stub_status和sub_filter指令的作用是什麼?


Stub_status指令:該指令用於瞭解Nginx當前狀態的當前狀態,如當前的活動連接,接受和處理當前讀/寫/等待連接的總數

Sub_filter指令:它用於搜索和替換響應中的內容,並快速修復陳舊的數據

15、解釋Nginx是否支持將請求壓縮到上游?


您可以使用Nginx模塊gunzip將請求壓縮到上游。gunzip模塊是一個過濾器,它可以對不支持“gzip”編碼方法的客戶機或服務器使用“內容編碼:gzip”來解壓縮響應。

16、解釋如何在Nginx中獲得當前的時間?


要獲得Nginx的當前時間,必須使用SSI模塊、$date_gmt和$date_local的變量。

Proxy_set_header THE-TIME $date_gmt;

17、用Nginx服務器解釋-s的目的是什麼?


用於運行Nginx -s參數的可執行文件。

18、解釋如何在Nginx服務器上添加模塊?


在編譯過程中,必須選擇Nginx模塊,因為Nginx不支持模塊的運行時間選擇。


分享到:


相關文章: