女人荫蒂被添全过程13种图片,亚洲+欧美+在线,欧洲精品无码一区二区三区 ,在厨房拨开内裤进入毛片

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Nginx和Apache的差異

馬哥Linux運維 ? 來源:CSDN技術社區 ? 2025-07-09 09:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Nginx

什么是Nginx?

Nginx是一個輕量級/高性能 的反向代理Web服務器,用于 HTTP、HTTPS、SMTP、POP3 和IMAP 協議。它實現非常高效的反向代理、負載平衡,可以處理2-3萬并發連接數,官方監測能支持5萬并發,現在中國使用nginx網站用戶有很多,例如:新浪、網易、騰訊等。

其他 web 網站服務軟件

TomcatJava Servlet和JSP的容器,用于托管Java Web應用程序。

IIS:Windows平臺的Web服務器,與Windows緊密集成,支持ASP.NET等技術。

Nginx 有哪些優點?

? 跨平臺、配置簡單。

? 非阻塞、高并發連接:處理 2-3 萬并發連接數,官方監測能支持5萬并發。

? 內存消耗小:開啟 10 個 Nginx 才占 150M 內存。

? 成本低廉,且開源。

? 穩定性高,宕機的概率非常小。

? 內置的健康檢查功能:如果有一個服務器宕機,會做一個健康檢查,再發送的請求就不會發送到宕機的服務器了。重新將請求提交到其他的節點上。

Nginx 應用場景

? http服務器。Nginx是一個http服務可以獨立提供http服務。可以做網頁靜態服務器。

? 虛擬主機。可以實現在一臺服務器虛擬出多個網站,例如個人網站使用的虛擬機。

? 反向代理,負載均衡。當網站的訪問量達到一定程度后,單臺服務器不能滿足用戶的請求時,需要用多臺服務器集群可以使用 Nginx 做反向代理。并且多臺服務器可以平均分擔負載,不會應為某臺服務器負載高宕機而某臺服務器閑置的情況。

? Nginx 中也可以配置安全管理、比如可以使用Nginx搭建API接口網關,對每個接口服務進行攔截。

Nginx 和 Apache 的差異

特點

Apache:

創建多個進程或線程,而每個進程或線程都會為其分配 cpu 和內存(線程要比進程小的多,所以 worker 支持比 perfork 高的并發),并發過大會榨干服務器資源。

Nginx:

采用單線程來異步非阻塞處理請求(管理員可以配置 Nginx 主進程的工作進程的數量)(epol),不會為每個請求分配 cpu 和內存資源,節省了大量資源,同時也減少了大量的 CPU 的上下文切換。所以才使得 Nginx 支持更高的并發。

區別

1.輕量級:Nginx 相比 Apache 占用更少的內存和系統資源,特別適合高并發場景。

2.靜態資源處理性能:Nginx 在處理靜態資源時性能遠超 Apache,速度更快。

3.反向代理加速:Nginx 支持無緩存的反向代理,可以加速網站訪問,優化流量分發。

4.性能不依賴硬件:Nginx 的性能和可伸縮性不依賴于高性能硬件,Apache 需要較強的硬件資源才能獲得高效能。

5.熱部署支持:Nginx 支持熱部署,可以在不影響服務的情況下進行配置修改或軟件升級,而 Apache 需要重啟才能應用修改。

6.異步與同步處理:Nginx 是異步非阻塞的處理方式,一個進程可以處理多個連接;Apache 則是同步多進程,一個進程處理一個連接。

7.模塊化設計:Nginx 高度模塊化,開發模塊相對簡單,并且自帶的組件比 Apache 更少,適合針對特定需求進行優化。

8.高并發性能:Nginx 在高并發場景下能保持低資源消耗的同時提供高性能,而 Apache 則在高并發下消耗更多資源。

9.配置簡潔:Nginx 的配置文件相對簡潔,容易上手和維護;而 Apache 的配置文件復雜,學習成本較高。

這些差異使 Nginx 在處理高并發、靜態資源、反向代理等場景下更受歡迎,而 Apache 則更適用于復雜的動態內容管理或特定模塊需求的環境。

Nginx 默認的配置文件路徑

在基于RHEL(如CentOS、Fedora)的Linux發行版中,使用yum安裝 Nginx后,默認的配置文件路徑通常如下:

1.主配置文件

?/etc/nginx/nginx.conf
這個是Nginx的主配置文件,所有的全局配置選項(如worker進程數、日志文件路徑、http塊設置等)都會在這里定義。

2.站點虛擬主機配置目錄

?/etc/nginx/conf.d/
這個目錄通常包含具體的站點虛擬主機配置文件。默認的站點配置文件為:

?/etc/nginx/conf.d/default.conf
可以在這里添加、修改或刪除站點配置文件。

3.網站根目錄(默認網頁目錄)

?/usr/share/nginx/html/
這是Nginx安裝后,默認的網頁存放目錄。默認的網頁文件(如index.html)也存放在這個路徑中。

4.日志文件路徑

日志文件路徑可以在nginx.conf文件中通過access_log和error_log指令進行更改。

?訪問日志:/var/log/nginx/access.log

?錯誤日志:/var/log/nginx/error.log

YUM安裝的默認目錄和文件:

/etc/nginx/      # 配置文件目錄
├── nginx.conf     # 主配置文件
└── conf.d/      # 站點配置目錄
  └── default.conf  # 默認站點配置文件
/usr/share/nginx/html/ # 默認網站根目錄
/var/log/nginx/    # 日志文件目錄

Nginx 服務的 YUM 安裝

使用官方YUM源

# nginx.repo

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

啟動

systemctl start nginx
netstat -lntp | grep nginx

查看版本、系統狀態、開啟模塊等信息

nginx -v

Nginx 服務的編譯安裝

官網下載軟件包https://nginx.org/en/download.html。生產環境一般用穩定版。

1. 關閉防火墻并上傳安裝包

1. 關閉防火墻:

systemctl stop firewalld
systemctldisablefirewalld
setenforce 0

2. 將 Nginx 安裝包上傳至/opt目錄:

`nginx-1.12.0.tar.gz`

2. 安裝依賴包

Nginx 的配置及運行需要pcre、zlib、openssl等軟件包的支持,安裝這些軟件開發包提供相應的庫和頭文件:

yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make

3. 創建 Nginx 運行用戶和組

Nginx 默認以nobody身份運行,建議創建專門的用戶和組來更好地控制權限:

`useradd -M -s /sbin/nologin nginx`

4. 編譯安裝 Nginx

1. 解壓 Nginx 源碼包:

cd/opt
tar zxvf nginx-1.12.0.tar.gz -C /opt/

2. 進入解壓后的目錄并配置編譯選項:

cdnginx-1.12.0/
./configure 
--prefix=/usr/local/nginx     
# 指定 Nginx 的安裝路徑
--user=nginx            
# 指定運行 Nginx 的用戶
--group=nginx           
# 指定運行 Nginx 的組
--with-http_stub_status_module   
# 啟用 http_stub_status_module 模塊以支持狀態統計

#清爽版
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module








![]()

3. 編譯并安裝:

make && make install

4. 創建命令符號鏈接,讓系統可以識別nginx命令:

`ln-s /usr/local/nginx/sbin/nginx /usr/local/sbin/`

5. 管理 Nginx 服務

1. 檢查 Nginx 配置文件是否正確:

nginx -t

2. 啟動 Nginx:

/usr/local/nginx/sbin/nginx
# 或
nginx -g"daemon off;"
# 不要以守護進程(daemon)模式運行。

3. 停止 Nginx:

cat/usr/local/nginx/logs/nginx.pid # 查看 Nginx 的 PID
kill-3 
kill-s QUIT 
killall -3 nginx
killall -s QUIT nginx

4. 重載 Nginx 配置:

kill-1 
kill-s HUP 
killall -1 nginx
killall -s HUP nginx

5. 分割日志并重新打開日志文件:

kill-USR1 

6. 平滑升級 Nginx:Nginx 會啟動新版本的可執行文件,并且不會中斷現有的連接。這種方式可以實現平滑升級

kill-USR2 

6. Nginx 新版本平滑升級

大致步驟:
下載、解壓軟件包 -> 進入軟件包目錄 ./configure 配置 -> make 編譯 -> 替換nginx二進制文件 -> make upgrade

1. 解壓新版本的 Nginx 源碼包:

tar -zxvf nginx-1.xx.xx.tar.gz
cdnginx-1.xx.xx

2. 配置并編譯新版本 Nginx:

./configure 
--prefix=/usr/local/nginx 
--user=nginx 
--group=nginx 
--with-http_stub_status_module 
--with-http_ssl_module

make

3. 備份舊的 Nginx 二進制文件并替換為新版本(objs目錄):

mv/usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_old
cpobjs/nginx /usr/local/nginx/sbin/nginx

4. 升級 Nginx:

make upgrade 
# 確保當前 Nginx 進程是通過 /usr/local/nginx/sbin/nginx 啟動的

或者先停止舊版本 Nginx,然后啟動新版本:
killall nginx
/usr/local/nginx/sbin/nginx

7. Nginx 添加系統服務

方法一:使用init.d添加 Nginx 系統服務(腳本)

1. 編輯 Nginx 啟動腳本:

`vim /etc/init.d/nginx`

2. 填寫以下腳本內容:

#!/bin/bash
#chkconfig: - 99 20
#description: Nginx Service Control Script

COM="/usr/local/nginx/sbin/nginx"
PID="/usr/local/nginx/logs/nginx.pid"

case"$1"in
start)
$COM
;;

stop)
kill-s QUIT $(cat$PID)
;;

restart)
$0stop
$0start
;;

reload)
kill-s HUP $(cat$PID)
;;

*)
echo"Usage:$0{start|stop|restart|reload}"
exit1
esac
exit0









![]()

3. 修改文件權限并添加為系統服務:

chmod+x /etc/init.d/nginx
chkconfig --add nginx

4. 啟動、停止 Nginx 服務:

systemctl stop nginx
systemctl start nginx

方法二:使用systemd添加 Nginx 系統服務

1. 編輯 Nginx 的systemd服務文件:

`vim /lib/systemd/system/nginx.service`

2. 填寫以下內容:

[Unit]
Description=nginx
After=network.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP$MAINPID
ExecStop=/bin/kill -s QUIT$MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target








![]()

3. 各個字段說明:

?[Unit]

?Description:描述服務

?After:定義服務的依賴,網絡服務啟動后再啟動 Nginx。

?[Service]

?Type=forking:Nginx 以后臺模式運行。

?PIDFile:指定 Nginx 進程 ID 的存放路徑。

?ExecStart:Nginx 的啟動命令。

?ExecReload:Nginx 的重載命令。

?ExecStop:Nginx 的停止命令。

?PrivateTmp=true:為 Nginx 分配獨立的臨時空間。

?[Install]

?WantedBy=multi-user.target:設置服務在多用戶模式下啟動。

4. 修改權限并啟動 Nginx 服務:

chmod754 /lib/systemd/system/nginx.service
systemctl start nginx.service
systemctlenablenginx.service

Nginx 的2個進程

查看進程后有3個進程,實際有2個Nginx的進程,分別為:

master進程:管理worker進程,加載配置文件
worker進程:處理連接請求

詳解:

ps -elf | grep nginx
1 S root   17968   1 0 80  0 - 5146 sigsus 11:27 ?    0000 nginx: master process /usr/local/nginx/sbin/nginx
5 S nginx   17969 17968 0 80  0 - 5257 ep_pol 11:27 ?    0000 nginx: worker process
0 S root   18037 15136 0 80  0 - 28206 pipe_w 11:34 pts/0  0000 grep --color=auto nginx

這三個進程涉及 Nginx 的工作機制:

1.nginx: master process /usr/local/nginx/sbin/nginx

? 這是 Nginx 的主進程,負責整體管理。它啟動后會監聽配置文件變化,管理多個工作進程(worker process)。主進程本身不處理實際的請求,而是用于:

? 讀取和解析配置文件

? 管理子進程(啟動、停止、重啟等)

? 處理信號(如重載、停止等)

2.nginx: worker process

? 這些是 Nginx 的工作進程,負責實際處理客戶端請求。每個 worker 進程獨立處理請求,包括靜態內容、代理請求、負載均衡等。Nginx 使用異步的、事件驅動的模型,所以一個 worker 可以同時處理大量連接。

3.grep --color=auto nginx

? 這部分是執行的grep命令,用于查找與 Nginx 相關的進程。-color=auto參數會將匹配到的字符串(這里是 “nginx”)高亮顯示。

總結:主進程負責管理,工作進程負責處理實際的請求。

Nginx 命令管理及進程控制

1.啟動與停止 Nginx

?后臺啟動 Nginx:

`nginx`


AI寫代碼bash
該命令啟動 Nginx 進程并以后臺模式運行。

?前臺啟動 Nginx:

nginx -g"daemon off;"
該命令啟動 Nginx 進程,并以前臺模式運行。此模式主要用于調試或某些特殊場景。

?停止 Nginx(優雅停止):

nginx -s quit
kill-3 
kill-s QUIT 
這三種方式都可以優雅地停止 Nginx,完成當前連接后停止服務。nginx -s quit是通過發送信號讓主進程優雅停止,而kill -s QUIT 和kill -3 直接向主進程發送QUIT信號實現停止。

2.重新加載 Nginx 配置

?重新加載配置:
這幾種方法用于在不停止 Nginx 的情況下,重新加載配置文件。nginx -s reload通過向 Nginx 主進程發送HUP信號來重新加載配置,而kill -1 和kill -s HUP 則是直接通過kill命令向主進程發送HUP信號。

nginx -s reload
kill-1 
kill-s HUP 

3.其他進程管理命令

?檢查配置文件語法:

nginx -t
該命令檢查 Nginx 配置文件語法的正確性,并報告是否有錯誤。

?日志文件切割(重新生成日志文件):

kill-USR1 
向 Nginx 主進程發送USR1信號,用于重新生成日志文件。該命令常用于日志分割,將舊的日志文件關閉并重新打開新日志文件。

鏈接: https://blog.csdn.net/qq_44421043/article/details/142467150

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Web
    Web
    +關注

    關注

    2

    文章

    1287

    瀏覽量

    71325
  • 服務器
    +關注

    關注

    13

    文章

    9784

    瀏覽量

    87856
  • nginx
    +關注

    關注

    0

    文章

    170

    瀏覽量

    12582

原文標題:從Nginx小白到運維高手:安裝配置與進程管理實戰教程

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    nginx重啟命令linux步驟是什么?

      1、驗證nginx配置文件是否正確   方法一:進入nginx安裝目錄sbin下,輸入命令./nginx -t   看到如下顯示nginx.conf syntax is ok
    發表于 07-10 16:40

    nginx重啟命令linux步驟是什么?

      1、驗證nginx配置文件是否正確   方法一:進入nginx安裝目錄sbin下,輸入命令./nginx -t   看到如下顯示nginx.conf syntax is ok
    發表于 07-11 17:13

    NanoPi NEO - 可靠的Nginx 網絡服務器

    服務器部署,并刪除匿名用戶和測試數據庫。#mysql_secure_installation根據提示進行選擇:3. 安裝nginx如果你之前已經安裝了Apache2,則需要先移除apache
    發表于 06-20 15:43

    nginx錯誤頁面配置

    16、nginx 錯誤頁面配置nginx錯誤頁面包括404 403 500 502 503 504等頁面,只需要在server中增加以下配置即可: error_page404 403 500 502
    發表于 07-26 06:54

    主要學習下nginx的安裝配置

    處理。因為有了中間件,使得大型網站在規劃有了更好的層次性,維護上更加方便。也可以實現負載均衡、安全防護等。Nginx是一個開源高性能、可靠的HTTP中間件、代理服務,在目前企業中得到了很大的利用。今天
    發表于 10-19 14:12

    ApacheNginx 簡單對比 以及Nginx 基本使用方法

    Nginx (engine x) 是一個高性能的HTTP和反向代理服務器,也是一個目前運維必備的工具之一。
    的頭像 發表于 01-31 14:42 ?8635次閱讀
    <b class='flag-5'>Apache</b>與<b class='flag-5'>Nginx</b> 簡單對比  以及<b class='flag-5'>Nginx</b> 基本使用方法

    nginx和tomcat區別

    Tomcat是Apache 軟件基金會的Jakarta 項目中的一個核心項目,由Apache、Sun 和其他一些公司及個人共同開發而成。Nginx (engine x) 是一個高性能的HTTP和反向代理服務器,也是一個IMAP/
    的頭像 發表于 02-12 15:37 ?1w次閱讀
    <b class='flag-5'>nginx</b>和tomcat區別

    一文讀懂NginxApache工作原理

    在高并發連接的情況下,NginxApache服務器不錯的替代品。Nginx同時也可以作為7層負載均衡服務器來使用。根據我的測試結果,Nginx 0.7.14 + PHP 5.2.6
    發表于 04-26 11:33 ?2613次閱讀

    Linux的apache

    Linux的apache(ups電源技術轉讓)-Linux的apache,有需要的可以參考!
    發表于 08-31 16:17 ?1次下載
    Linux的<b class='flag-5'>apache</b>

    Apache Doris正式成為 Apache 頂級項目

    全球最大的開源軟件基金會 Apache 軟件基金會(以下簡稱 Apache)于美國時間 2022 年?6 月 16 日宣布,Apache Doris 成功從 Apache 孵化器畢業,
    的頭像 發表于 06-17 14:08 ?1273次閱讀

    Nginx如何監控

    搭建了Nginx集群后,需要繼續深入研究的就是日常Nginx監控。
    的頭像 發表于 08-22 10:03 ?1602次閱讀

    Nginx入門指南

    Nginx是由Igor Sysoev(俄羅斯人)為當地網站Rambler.ru所開發的一款高性能WEB 服務軟件,第一個公開版本于2004年10月發布。一開始Nginx并不為人所知,后來由于它誘人
    的頭像 發表于 01-07 09:53 ?1007次閱讀

    Nginx 如何實現高性能低消耗

    Nginx 是一個輕量級的HTTP 服務程序,相比其他服務器程序如ApacheNginx占用內存少,穩定性高,并發處理能力強。同時Nginx 還是一個反向代理服務程序,和郵件代理服務
    的頭像 發表于 11-11 11:31 ?809次閱讀
    <b class='flag-5'>Nginx</b> 如何實現高性能低消耗

    Apache服務器和Nginx服務器

    ApacheNginx都是常見的開源Web服務器軟件,它們用于處理HTTP請求并提供網站和應用程序的服務。下面是對ApacheNginx的一些基本特點的比較: 一、
    的頭像 發表于 01-22 16:48 ?825次閱讀

    Nginx基礎安裝與配置教程

    說起Web服務器,大家第一反應可能是Apache,但作為一個在運維路上摸爬滾打的技術人,我必須要為Nginx正名一下!這個由俄羅斯大神Igor Sysoev開發的輕量級HTTP服務器,真的是我見過最"能打"的Web服務器之一。
    的頭像 發表于 06-13 16:13 ?508次閱讀
    主站蜘蛛池模板: 宿松县| 绥化市| 容城县| 柳州市| 揭东县| 吉林省| 确山县| 宾阳县| 和田县| 临颍县| 营口市| 石屏县| 克山县| 德兴市| 巴马| 湘阴县| 江永县| 西丰县| 宁阳县| 砚山县| 珲春市| 交口县| 吉水县| 汝阳县| 宝兴县| 德江县| 鲁甸县| 贵州省| 那坡县| 浦北县| 延津县| 龙口市| 常山县| 嘉荫县| 正蓝旗| 偏关县| 和顺县| 彭阳县| 韩城市| 东阿县| 六安市|