Ubuntu 安裝 Nginx

Nginx 是一個高性能的 Web 服務器和反向代理服務器,同時也可以用作負載均衡器和 HTTP 緩存。

Nginx 的主要用途

用途說明
Web服務器提供網頁服務,處理用戶的 HTTP 請求,返回 HTML、CSS、JS、圖片等靜態資源。
反向代理服務器將用戶請求轉發到后端服務器(如 Tomcat、Flask、Spring Boot),隱藏真實后端。
負載均衡器把用戶請求平均分發到多個后端服務器,提高處理能力和可用性。
緩存服務器緩存靜態內容或后端響應,加快訪問速度,減輕后端壓力。

安裝 Nginx

sudo apt-get update
sudo apt-get install -y nginx

Nginx 配置路徑

內容路徑
nginx 根目錄/etc/nginx
配置文件/etc/nginx/nginx.conf
站點配置目錄/etc/nginx/sites-available/
啟用的站點目錄/etc/nginx/sites-enabled/
默認網頁目錄/var/www/html
日志文件/var/log/nginx/access.log 和 error.log

/etc/nginx/nginx.conf:文件不用動,它的作用是加載其他子配置文件。

/etc/nginx/sites-available/:所有的子配置文件都存放在這個目錄,相當于候選配置。

/etc/nginx/sites-enabled/:Nginx 啟動時只會讀取這個目錄中的配置文件,如果想讓候選配置生效,就把候選配置通過軟鏈接,連接到這個目錄。


配置文件

我們要添加一個配置,要怎么弄?

1. 在 /etc/nginx/sites-available/ 目錄下創建一個文件,這個文件名稱自定義,可以叫任何名字(比如:default、example.com、api.conf,都可以)。文件的內容是一個 server 區塊,用來配置某個網站或服務的監聽方式、路徑、靜態目錄等。

sudo vim /etc/nginx/sites-available/my-site

/etc/nginx/sites-available/my-site?文件內容如下:

server {listen 80;server_name localhost;root /var/www/html;index index.html;location / {try_files $uri $uri/ =404;}
}
參數說明含義
listen 80;監聽 80 端口(HTTP 默認端口,HTTPS端口443)
server_name localhost;設置主機名(用域名部署時改成你的域名)
root /var/www/html;網站根目錄,里面應該放 index.html 等文件
index index.html index.htm;設置默認首頁文件
location /匹配所有路徑請求
try_files $uri $uri/ =404;如果文件存在就加載文件,不存在就返回 404

2. 保存退出后,再用符號鏈接讓它生效:

添加軟鏈接

sudo ln -s /etc/nginx/sites-available/my-site /etc/nginx/sites-enabled/

# 移除軟鏈接

sudo rm /etc/nginx/sites-enabled/my-site

3. 檢查配置文件是否正確,然后重啟 nginx 服務

sudo nginx -t
sudo systemctl reload nginx

4. 把靜態文件資源,例如 index.html,放到?root /var/www/html 這里配置的目錄

5. 然后瀏覽器輸入 http://ip:port 訪問


Nginx 常用命令

啟動 Nginx:sudo systemctl start nginx

停止 Nginx:sudo systemctl stop nginx

重啟 Nginx:sudo systemctl restart nginx

重載配置(不中斷服務):sudo systemctl reload nginx

查看 Nginx 狀態:sudo systemctl status nginx

開啟開機自啟動:sudo systemctl enable nginx

禁用開機啟動:sudo systemctl disable nginx

查看 Nginx 版本:nginx -v

查看 Nginx 安裝的模塊:nginx -V

檢查配置文件是否有語法錯誤:sudo nginx -t

啟動 Nginx(等同于 systemctl start nginx):sudo nginx

停止 Nginx(快速關閉):sudo nginx -s stop

優雅關閉(處理完當前請求再退出):sudo nginx -s quit

重載配置(推薦使用):sudo nginx -s reload

更多配置請查看:nginx配置

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/905253.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/905253.shtml
英文地址,請注明出處:http://en.pswp.cn/news/905253.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

人工智能 機器學習期末考試題

自測試卷2 一、選擇題 1.下面哪個屬性不是NumPy中數組的屬性( )。 A.ndim B.size C.shape D.add 2.一個簡單的Series是由( )的數據組成的。 A.兩…

使用阿里云CLI調用OpenAPI

介紹使用阿里云CLI調用OpenAPI的具體操作流程,包括安裝、配置憑證、生成并調用命令等步驟。 方案概覽 使用阿里云CLI調用OpenAPI,大致分為四個步驟: 安裝阿里云CLI:根據您使用設備的操作系統,選擇并安裝相應的版本。…

K8S Svc Port-forward 訪問方式

在 Kubernetes 中,kubectl port-forward 是一種 本地與集群內資源(Pod/Service)建立臨時網絡隧道 的訪問方式,無需暴露服務到公網,適合開發調試、臨時訪問等場景。以下是詳細使用方法及注意事項: 1. 基礎用…

23、DeepSeek-V2論文筆記

DeepSeek-V2 1、背景2、KV緩存優化2.0 KV緩存(Cache)的核心原理2.1 KV緩存優化2.2 性能對比2.3 架構2.4多頭注意力 (MHA)2.5 多頭潛在注意力 (MLA)2.5.1 低秩鍵值聯合壓縮 (Low-Rank Key-Value …

MySQL OCP試題解析(2)

試題如下圖所示: 一、題目背景還原 假設存在以下MySQL用戶權限配置: -- 創建本地會計用戶CREATE USER accountinglocalhost IDENTIFIED BY acc_123;-- 創建匿名代理用戶(用戶名為空,允許任意主機)CREATE USER % IDENTI…

深度學習Y7周:YOLOv8訓練自己數據集

🍨 本文為🔗365天深度學習訓練營中的學習記錄博客🍖 原作者:K同學啊 一、配置環境 1.官網下載源碼 2.安裝需要環境 二、準備好自己的數據 目錄結構: 主目錄 data images(存放圖片) annotati…

英偉達Blackwell架構重構未來:AI算力革命背后的技術邏輯與產業變革

——從芯片暴力美學到分布式智能體網絡,解析英偉達如何定義AI基礎設施新范式 開篇:當算力成為“新石油”,英偉達的“煉油廠”如何升級? 2025年3月,英偉達GTC大會上,黃仁勛身披標志性皮衣,宣布了…

CurrentHashMap的整體系統介紹及Java內存模型(JVM)介紹

當我們提到ConurrentHashMap時,先想到的就是HashMap不是線程安全的: 在多個線程共同操作HashMap時,會出現一個數據不一致的問題。 ConcurrentHashMap是HashMap的線程安全版本。 它通過在相應的方法上加鎖,來保證多線程情況下的…

Android開發-設計規范

在Android應用開發中,遵循良好的設計規范不僅能夠提升用戶體驗,還能確保代碼的可維護性和擴展性。本文將從用戶界面(UI)、用戶體驗(UX)、性能優化以及代碼結構等多個維度探討Android開發中的設計規范&#…

泛型加持的策略模式:打造高擴展的通用策略工具類

一、傳統策略模式的痛點與突破 1.1 傳統策略實現回顧 // 傳統支付策略接口 public interface PaymentStrategy {void pay(BigDecimal amount); }// 具體策略實現 public class AlipayStrategy implements PaymentStrategy {public void pay(BigDecimal amount) { /* 支付寶支…

物聯網從HomeAssistant開始

文章目錄 一、什么是home-assistant?1.核心架構2.集成架構 二、在樹梅派5上安裝home-assistant三、接入米家1.對比下趨勢2.手動安裝插件3.配置方式 四、接入公牛1.手動安裝插件2.配置方式 五、接入海爾1.手動安裝插件2.配置方式 六、接入國家電網 一、什么是home-assistant? …

系統架構-嵌入式系統架構

原理與特征 嵌入式系統的典型架構可概括為兩種模式,即層次化模式架構和遞歸模式架構 層次化模式架構,位于高層的抽象概念與低層的更加具體的概念之間存在著依賴關系,封閉型層次架構指的是,高層的對象只能調用同一層或下一層對象…

計算機圖形學編程(使用OpenGL和C++)(第2版)學習筆記 09.天空和背景

天空和背景 對于 3D 場景,通常可以通過在遠處的地平線附近創造一些逼真的效果,來增強其真實感。我們可以采用天空盒、天空柱(Skydome)或天空穹(Skydome)等技術來模擬天空。 天空盒 天空盒(Sk…

【Leetcode 每日一題】1550. 存在連續三個奇數的數組

問題背景 給你一個整數數組 a r r arr arr,請你判斷數組中是否存在連續三個元素都是奇數的情況:如果存在,請返回 t r u e true true;否則,返回 f a l s e false false。 數據約束 1 ≤ a r r . l e n g t h ≤ 10…

面試題解析 | C++空類的默認成員函數(附生成條件與底層原理)

在C面試中,“空類默認生成哪些成員函數”是考察對象模型和編譯器行為的高頻題目。許多資料僅提及前4個函數,但完整的答案應包含6個核心函數,并結合C標準深入解析其生成規則與使用場景。 一、空類默認生成的6大成員函數 1. ?缺省構造函數? …

視頻編解碼學習7之視頻編碼簡介

視頻編碼技術發展歷程與主流編碼標準詳解 視頻編碼技術是現代數字媒體領域的核心技術之一,它通過高效的壓縮算法大幅減少了視頻數據的體積,使得視頻的存儲、傳輸和播放變得更加高效和經濟。從早期的H.261標準到最新的AV1和H.266/VVC,視頻編碼…

使用Stable Diffusion(SD)中,步數(Steps)指的是什么?該如何使用?

Ⅰ定義: 在Stable Diffusion(SD)中,步數(Steps) 指的是采樣過程中的迭代次數,也就是模型從純噪聲一步步“清晰化”圖像的次數。你可以理解為模型在畫這張圖時“潤色”的輪數。 Ⅱ步數的具體作…

消息隊列如何保證消息可靠性(kafka以及RabbitMQ)

目錄 RabbitMQ保證消息可靠性 生產者丟失消息 MQ丟失消息 消費端丟失了數據 Kakfa的消息可靠性 生產者的消息可靠性 Kakfa的消息可靠性 消費者的消息可靠性 RabbitMQ保證消息可靠性 生產者丟失消息 1.事務消息保證 生產者在發送消息之前,開啟事務消息隨后生…

如何查看項目是否支持最新 Android 16K Page Size 一文匯總

前幾天剛聊過 《Google 開始正式強制 Android 適配 16 K Page Size》 之后,被問到最多的問題是「怎么查看項目是否支持 16K Page Size」 ?其實有很多直接的方式,但是最難的是當你的項目有很多依賴時,怎么知道這個「不支持的動態庫…

HttpServletResponse的理解

HttpServletResponse 是 Java Servlet API 提供的一個接口 常用方法 方法用途setContentType(String type)設置響應內容類型(如 "application/json"、"text/html")setStatus(int sc)設置響應狀態碼(如 200、404&#x…