Nginx面試

来源:https://www.cnblogs.com/houqx/archive/2019/03/21/10569474.html
-Advertisement-
Play Games

聲明:此文章非本人所 原創,是別人分享所得,如有知道原作者是誰可以聯繫本人,如有轉載請加上此段話 1、請解釋一下什麼是 Nginx? Nginx是一個 web伺服器和反向代理伺服器,用於 HTTP、HTTPS、SMTP、POP3和 IMAP協議。 2、請列舉 Nginx的一些特性。 Nginx伺服器 ...


聲明:此文章非本人所 原創,是別人分享所得,如有知道原作者是誰可以聯繫本人,如有轉載請加上此段話

 

 

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

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

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

Nginx伺服器的特性包括:

反向代理/L7負載均衡器

嵌入式 Perl解釋器

動態二進位升級

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

3請解釋 Nginx如何處理 HTTP請求。

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

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

只需將請求刪除的伺服器定義為:

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

}

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

5、 使用反向代理伺服器的優點是什麼?

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

6、請列舉 Nginx伺服器的最佳用途。

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

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

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

Worker進程:處理請求

 8、請解釋你如何通過不同於 80 的埠開啟 Nginx?

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

Like server { listen 81; }

9、請解釋是否有可能將 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;#…}

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

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

語法:merge_slashes [on/off]

預設值: merge_slashes on
環境: http,server
11、請解釋 ngx_http_upstream_module 的作用是什麼?

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

12、請解釋什麼是 C10K 問題?
C10K問題是指無法同時處理大量客戶端(10,000)的網路套接字。

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

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

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

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

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

15、解釋如何在 Nginx 中獲得當前的時間? 要獲得 Nginx的當前時間,必須使用 SSI模塊、$date_gmt和$date_local的變量。

Proxy_set_header THE-TIME $date_gmt;

16、用 Nginx 伺服器解釋-s 的目的是什麼?

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

17、解釋如何在 Nginx 伺服器上添加模塊?

在編譯過程中,必須選擇 Nginx模塊,因為 Nginx不支持模塊的運行時間選擇。
 
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 單例模式 單例模式的定義是:保證一個類只有一個實例,並提供一個訪問它的全局訪問點。比如說購物車,在一個商城中,我們只需要一個購物車,購物車在整個商城中是唯一的,不需要多次創建,即使多次點擊購物車按鈕,也不會生成多個購物車。 閉包預警:有對閉包不明白的同學,可以 "看這裡" 。 讓我們實現一個單例模式 ...
  • hi,大家伙,我是佛系大大,很高興與你們一起溝通,學習,進步。 很久不更新博客了,現在回來再寫博客,盡然是有些懷念的感覺,幸福的感覺。因為寫博客,內心會很寧靜,沉浸在自己的世界中,是很幸福的一件事。當然,並非逃離現實(雞毛蒜皮,工作糟心的凡事),佛系大大還是很上進的,讓我們一起努力。 廢話不多說了, ...
  • 如果這是第二次看到我的文章,歡迎右側掃碼訂閱我喲~ 👉 本文長度為3578字,建議閱讀10分鐘。 堅持原創,每一篇都是用心之作~ 此前的「伸縮性」章節結束了,此文是「高性能」章節的第一篇。 只要是位正兒八經的程式員自然知道「緩存」是什麼,甚至我司的很多做運營的小姐姐現在和程式員小哥哥的交流中都時不 ...
  • 親愛的朋友,歡迎你來到對象村,開始走進設計模式的世界。這裡的每個人都很熟練的使用設計模式,很快我和你們一起,都會學習的很好,通過設計模式,躋身上流社會。 計劃每一章節的學習,通過幾個篇幅來完成,理論+實踐的方式。書中很多地方用到了圖形表示,小編儘量用圖文的方式和大家互動。先用理論建立知識,再用圖形象 ...
  • 官網:www.fhadmin.org 此項目為Springboot工作流版本 windows 風格,瀏覽器訪問操作使用,非桌面應用程式。 1.代碼生成器: [正反雙向](單表、主表、明細表、樹形表,快速開發利器)+快速表單構建器 freemaker模版技術 ,0個代碼不用寫,生成完整的一個模塊,帶頁 ...
  • ui->label_6->setText(QString::number(table_test[0]<<8 | table_test[1]));這樣子就可以把十六進位的數轉換為十進位,單片機發過來的串口數據就可以直接顯示在label上了。當時用lcd_numbera顯示不能直接顯示16進值。而且顯示 ...
  • 1. 前言 技術這東西吧,看別人寫的好像很簡單似的,到自己去寫的時候就各種問題,“一看就會,一做就錯”。網上關於實現SSO的文章一大堆,但是當你真的照著寫的時候就會發現根本不是那麼回事兒,簡直讓人抓狂,尤其是對於我這樣的菜鳥。幾經曲折,終於搞定了,決定記錄下來,以便後續查看。先來看一下效果 2. 準 ...
  • 題意 "題目鏈接" Sol $B(x) = \exp(K\ln(A(x)))$ 做完了。。。 複雜度$O(n\log n)$ cpp // luogu judger enable o2 // luogu judger enable o2 include define Pair pair define ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...