openEuler 22.03 安裝 Nginx,支持離線安裝

目錄

    • 一、環境檢查
      • 1.1 必要環境檢查
      • 1.2 在線安裝(有網絡)
      • 1.3 離線安裝(無網絡)
    • 二、下載Nginx
      • 2.1 在線下載
      • 2.2 離線下載
    • 三、安裝Nginx
    • 四、開機自啟服務
    • 五、開放防火墻端口
    • 六、常用命令

一、環境檢查

1.1 必要環境檢查

# 查看 gcc 版本
[root@openeuler ~]# gcc --version
# 查看 pcre 版本
[root@openeuler ~]# pcre-config --version
# 查看 zlib 版本
[root@openeuler ~]# dnf list installed | grep zlib
# 查看 openssl 版本
[root@openeuler ~]# openssl version
# 查看 gcc pcre-config openssl 位置
[root@openeuler ~]# readlink -f $(which gcc pcre-config openssl)

1.2 在線安裝(有網絡)

[root@openeuler ~]# sudo dnf install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel

1.3 離線安裝(無網絡)

1.3.1 軟件包下載
openEuler軟件中心:https://easysoftware.openeuler.org/zh/rpm
華為開源鏡像站:http://mirrors.huaweicloud.com/openeuler/openEuler-22.03-LTS-SP4/everything/x86_64/Packages/
華中科技大學鏡像站:https://mirrors.hust.edu.cn/openeuler/openEuler-22.03-LTS-SP4/everything/x86_64/Packages/

離線包下載:openEuler 22.03 安裝 Nginx 所需的依賴包

1.3.2 軟件包安裝

# 切換到 RPM 包所在目錄,假設 RPM 包存放在 /home/rpm_packages 目錄下
[root@openeuler ~]# cd /home/rpm_packages
# 正常安裝命令
[root@openeuler rpm_packages]# sudo rpm -ivh *.rpm --nodeps
# 強制安裝命令
# 重要事項:沒把握的話,千萬不要用下面這個命令,這個命令會忽略依賴和兼容性,可能會導致基礎組件被卸載掉。
[root@openeuler rpm_packages]# sudo rpm -Uvh *.rpm --nodeps --force

小技巧:可以提前在有網絡環境下下載安裝包,移動到無網絡環境
yumdownloader --resolve gcc-c++
yumdownloader --resolve pcre pcre-devel
yumdownloader --resolve zlib zlib-devel
yumdownloader --resolve openssl openssl-devel

二、下載Nginx

2.1 在線下載

# 創建安裝目錄
[root@openeuler ~]# mkdir /mnt/nginx
[root@openeuler ~]# cd /mnt/nginx/
# 在線下載安裝包
[root@openeuler nginx]# wget https://nginx.org/download/nginx-1.28.0.tar.gz

2.2 離線下載

下載地址(Stable version):https://nginx.org/en/download.html
上傳到 /mnt/nginx 目錄下
在這里插入圖片描述

三、安裝Nginx

# 進入安裝目錄
[root@openeuler ~]# cd /mnt/nginx/# 解壓安裝包
[root@openeuler nginx]# tar -zxvf nginx-1.28.0.tar.gz# 進入解壓目錄
[root@openeuler nginx]# cd nginx-1.28.0/# 編譯并安裝,Nginx 默認安裝在 /usr/local/nginx 目錄下
[root@openeuler nginx-1.28.0]# ./configure   或者   ./configure --prefix=/mnt/nginx/nginx1.28.0
[root@openeuler nginx-1.28.0]# make
[root@openeuler nginx-1.28.0]# sudo make install# 啟動 Nginx
[root@openeuler nginx-1.28.0]# sudo /usr/local/nginx/sbin/nginx
#[root@openeuler nginx-1.28.0]# sudo /mnt/nginx/nginx1.28.0/sbin/nginx# 檢查是否運行
[root@openeuler nginx-1.28.0]# curl http://localhost# 關閉 Nginx
[root@openeuler nginx-1.28.0]# sudo /usr/local/nginx/sbin/nginx -s stop
#[root@openeuler nginx-1.28.0]# sudo /mnt/nginx/nginx1.28.0/sbin/nginx -s stop

自定義配置(不推薦)

./configure \
--prefix=/usr/local/nginx \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--pid-path=/usr/local/nginx/conf/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi

四、開機自啟服務

4.1 配置SELinux安全上下文(自定義路徑需要用到)
注意:如果不配置SELinux安全上下文,后續啟動系統腳本時報錯【code=exited, status=203/EXEC】

# 恢復默認上下文(針對自定義路徑)
[root@openeuler ~]# sudo semanage fcontext -a -t bin_t "/mnt/nginx/nginx1.28.0/sbin(/.*)?"
[root@openeuler ~]# sudo semanage fcontext -a -t etc_t "/mnt/nginx/nginx1.28.0/conf(/.*)?"
[root@openeuler ~]# sudo restorecon -Rv /mnt/nginx/
# 驗證標簽
[root@openeuler ~]# ls -Zd /mnt/nginx/nginx1.28.0/sbin/nginx
# 應顯示類似:system_u:object_r:bin_t:s0

4.2 配置開機自啟腳本

# 創建自啟動腳本
[root@openeuler ~]# sudo vi /etc/systemd/system/nginx.service# =============================================================================
# 復制粘貼以下內容: /usr/local/nginx/sbin 需要按照實際情況修改成自己的地址
[Unit]
Description=Nginx HTTP Server
After=network.target[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true[Install]
WantedBy=multi-user.target
# =============================================================================
# 復制粘貼以下內容: /mnt/nginx/nginx1.28.0/sbin需要按照實際情況修改成自己的地址
[Unit]
Description=Nginx HTTP Server
After=network.target[Service]
Type=forking
ExecStart=/mnt/nginx/nginx1.28.0/sbin/nginx
ExecReload=/mnt/nginx/nginx1.28.0/sbin/nginx -s reload
ExecStop=/mnt/nginx/nginx1.28.0/sbin/nginx -s quit
PrivateTmp=true[Install]
WantedBy=multi-user.target
# =============================================================================# 注意:要保證 nginx 后臺服務未啟動
# 設置開機自啟
[root@openeuler ~]# systemctl daemon-reload
[root@openeuler ~]# sudo systemctl enable nginx
# 啟動Nginx服務
[root@openeuler ~]# sudo systemctl start nginx
# 查看服務狀態
[root@openeuler ~]# sudo systemctl status nginx

五、開放防火墻端口

# 查詢端口是否開放
[root@openeuler ~]# sudo firewall-cmd --query-port=80/tcp
# 開放端口(TCP協議)
[root@openeuler ~]# sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
# 重新加載防火墻規則
[root@openeuler ~]# sudo firewall-cmd --reload
# 驗證端口是否開放
[root@openeuler ~]# sudo firewall-cmd --zone=public --list-ports
# 查看所有端口
[root@centosServer ~]# sudo netstat -nlpt

六、常用命令

# 啟動 nginx 服務
systemctl start nginx.service
# 查看服務狀態
systemctl status nginx.service
# 重啟服務
systemctl restart nginx.service
# 停止服務
systemctl stop nginx.service
# 開機自動啟動
systemctl enable nginx.service
# 取消開機自動啟動
systemctl disabled nginx.service
# 查看進程
ps -ef | grep nginx

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

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

相關文章

基于深度學習的圖像壓縮技術(二)

接上篇:基于深度學習的圖像壓縮技術(一)-CSDN博客 3 基于生成對抗神經網絡的圖像壓縮技術 生成對抗網絡是一種先進的無監督學習算法,由Goodfellow等人在2014 年首次提出,其核心思想源于博弈論。 生成對抗網絡在圖像壓…

TCP和UDP的數據傳輸+區別

目錄 一、數據傳輸過程 1.1 TCP字節流服務圖 1.2 UDP數據報服務圖 二、tcp與udp的區別 1.連接方式 2.可靠性 3.傳輸效率 4.有序性 5.流量控制和擁塞控制 6.應用場景 7.首部長度 三、tcp與udp能不能使用同一個端口號? 四、同一個協議&#xf…

基于ssm的校園舊書交易交換平臺(源碼+文檔)

項目簡介 校園舊書交易交換平臺的主要使用者分為: 前臺功能:用戶進入系統可以對首頁、書籍信息、校園公告、個人中心、后臺管理等功能進行操作; 后臺主要是管理員,管理員功能包括主頁、個人中心、學生管理、發布人管理、書籍分類…

虛假安全補丁攻擊WooCommerce管理員以劫持網站

一場大規模釣魚攻擊正針對WooCommerce用戶,通過偽造安全警報誘使他們下載所謂的"關鍵補丁",實則為植入WordPress后門的惡意程序。 惡意插件植入 根據Patchstack研究人員發現,上當受騙的用戶在下載更新時,實際上安裝的…

《冰雪傳奇點卡版》:第二大陸介紹!

一、第二大陸:高階資源與實力驗證的核心戰場 1. 準入條件與地圖分布 進入門檻: 基礎要求:角色需達到四轉(需消耗50萬元寶完成轉生任務),部分地圖需額外滿足神魔點數(如黑暗之森需神魔全2&#…

信創系統圖形界面開發指南:技術選擇與實踐詳解

信創系統圖形界面開發指南:技術選擇與實踐詳解 🧑 博主簡介:CSDN博客專家、CSDN平臺優質創作者,高級開發工程師,數學專業,10年以上C/C, C#, Java等多種編程語言開發經驗,擁有高級工程師證書&…

【人臉去遮擋前沿】三階段級聯引導學習如何突破真實場景遮擋難題?

一、現實痛點:當人臉被遮擋,AI “認臉” 有多難? 你是否遇到過這樣的場景? 中考體育測試:2025 年天津泰達街中考考場要求考生 “臉部無遮擋” 才能通過人臉識別入場,戴口罩、帽子的學生需現場調整發型。智能門鎖:奇景光電在 CES 2025 推出的 WiseEye 掌靜脈模塊,通過掌…

c++線程的創建

c 11 線程編程實戰 目錄 c 11 線程編程實戰1,線程的創建1.1 傳入無參函數1.2 傳入有參函數1.3 傳入類內部函數1.4 lambda表達式 1,線程的創建 1.1 傳入無參函數 //傳入函數,創建線程 void ThreadMain() {//獲取線程IDstd::thread::id thi…

人工智能數學基礎(六):數理統計

數理統計是人工智能中數據處理和分析的核心工具,它通過收集、分析數據來推斷總體特征和規律。本文將系統介紹數理統計的基本概念和方法,并結合 Python 實例,幫助讀者更好地理解和應用這些知識。資源綁定附上完整資源供讀者參考學習&#xff0…

解決STM32待機模式無法下載程序問題的深度探討

在現代嵌入式系統開發中,STM32系列微控制器因其高性能、低功耗和豐富的外設資源而廣受歡迎。然而,開發者在使用STM32時可能會遇到一個問題:當微控制器進入待機模式后,無法通過調試接口(如SWD或JTAG)下載程序…

C#擴展方法與Lambda表達式基本用法

C# 擴展方法與 Lambda 表達式詳解 一、擴展方法詳解 1. 基本概念 ??擴展方法??允許為現有類型"添加"方法,而無需修改原始類型或創建派生類型。 ??定義條件??: 必須在靜態類中定義方法本身必須是靜態的第一個參數使用this修飾符指…

C#規避內存泄漏的編碼方法

C#規避內存泄漏的編碼方法 內存泄漏是C#開發中常見的問題,盡管.NET有垃圾回收機制(GC),但不當的編碼實踐仍可能導致內存無法被及時回收。以下是系統性的規避內存泄漏的方法: 一、理解內存泄漏的常見原因 ??未釋放的事件訂閱????靜態…

React 后臺管理系統

這是一個基于 React TypeScript Ant Design 開發的向明天系統前端項目。 git倉庫地址 技術棧 React 19TypeScriptAnt Design 5.xRedux ToolkitReact RouterAxiosLess 環境要求 Node.js (推薦使用最新LTS版本)npm 或 yarn 安裝步驟 克隆項目到本地 git clone [https://…

第九節:文件操作

理論知識 文件的基本概念:文件是存儲數據的基本單位,在 Linux 系統中,一切皆文件。文件可以是文本文件、二進制文件、設備文件等。文件的創建:使用 touch 命令可以創建一個新的空文件。如果文件已經存在,則更新文件的…

2025-03 機器人等級考試四級理論真題 4級

1 2025年蛇年春晚,節目《秧BOT》機器人舞蹈表演節目點燃了全國觀眾的熱情,請問參加節目表演的機器人是由哪家公司研發?( ) A.大疆 B.華為 C.優必選 D.宇樹科技 【參考答…

k8s平臺:手動部署Grafana

以下是一個可用于生產環境的 Kubernetes 部署 Grafana 的 YAML 文件。該配置包括 Deployment、Service、ConfigMap 和 PersistentVolumeClaim,確保 Grafana 的高可用性和數據持久化。 Grafana 生產部署 YAML 文件 ☆實操示例 cat grafana-deployment.yaml --- # …

農產品園區展示系統——仙盟創夢IDE開發

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>農業大數據平臺</title><style>* {margi…

每日Bug:(2)共享內存

對于整個系統而言&#xff0c;主存與CPU的資源都是有限的&#xff0c;隨著打開進程數量的增加&#xff0c;若是將所有進程運行所需的代碼/數據/棧/共享庫都存放在主存中&#xff0c;那么開啟一部分進程就可以將主存占用完。 虛擬內存就是解決以上問題的方法&#xff0c;使用虛…

C語言Makefile編寫與使用指南

Makefile 詳細指南&#xff1a;編寫與使用 Makefile 是 C/C 項目中常用的自動化構建工具&#xff0c;它定義了項目的編譯規則和依賴關系。下面我將詳細介紹 Makefile 的編寫和使用方法。 一、Makefile 基礎 1. 基本結構 一個典型的 Makefile 包含以下部分&#xff1a; mak…

Centos離線安裝Docker(無坑版)

1、下載并上傳docker離線安裝包 官方地址&#xff1a;安裝包下載 2、上傳到離線安裝的服務器解壓 tar -zxvf docker-28.1.1.tgz#拷貝解壓二進制文件到相關目錄 cp docker/* /usr/bin/ 3、創建docker啟動文件 cat << EOF > /usr/lib/systemd/system/docker.servic…