国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

linux環(huán)境安裝使用nginx詳解

這篇具有很好參考價值的文章主要介紹了linux環(huán)境安裝使用nginx詳解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

01-Nginx安裝

? Nginx 是一款 輕量級 Web 服務器/ 反向代理 服務器及 電子郵件 (IMAP/POP3)代理服務器,并在一個BSD-like 協(xié)議下發(fā)行。由俄羅斯的程序設計師Igor Sysoev所開發(fā),供俄國大型的入口網(wǎng)站及搜索引擎Rambler(俄文:Рамблер)使用。其特點是占有內存少, 并發(fā) 能力強,事實上nginx的并發(fā)能力確實在同類型的網(wǎng)頁服務器中表現(xiàn)較好,中國大陸使用nginx網(wǎng)站用戶有: 京東 、 新浪 、 網(wǎng)易 、 騰訊 、 淘寶 等。

目錄

01-Nginx安裝

nginx安裝

02-Nginx負載均衡策略

03-Nginx實現(xiàn)Tomcat負載均衡集群

04-nginx.conf配置文件

?? ?4.1、nginx.conf介紹

? ? 4.2、常用指令文章來源地址http://www.zghlxwxcb.cn/news/detail-613492.html


linux nginx,常用技術,服務器,linux,運維,nginx

nginx安裝

# 0.首先需要有依賴
yum install -y gcc pcre-devel zlib-devel
# 1.下載Nginx
http://nginx.org/en/download.html
# 2.將Nginx上傳到linux中,并解壓縮
tar -zxvf nginx-1.11.1.tar.gz
# 3.在解壓好的nginx目錄中執(zhí)行如下命令:(指定安裝位置)
./configure --prefix=/usr/nginx
# 5.執(zhí)行上述命令后,執(zhí)行如下命令:
make && make install
# 6.編譯完成后進入編譯安裝目錄/usr/nginx目錄中查看:
[root@localhost nginx]# ls -l
總用量 4
drwxr-xr-x. 2 root root 4096 10月 14 21:17 conf
drwxr-xr-x. 2 root root 40 10月 14 21:17 html
drwxr-xr-x. 2 root root 6 10月 14 21:17 logs
drwxr-xr-x. 2 root root 19 10月 14 21:17 sbin
# 7.啟動nginx,進入nginx安裝目錄的sbin目錄中執(zhí)行:
./nginx
# 8.在windows中瀏覽器訪問,可以看到nginx歡迎頁面:
http://10.15.0.8:80/????????--輸入自己的服務器地址:nginx端口號
注意:關閉網(wǎng)絡防火墻
# 9.關閉nginx,進入nginx安裝目錄的sbin目錄中執(zhí)行:
./nginx -s stop
# 10.nginx配置文件在nginx安裝目錄的conf目錄中:
[root@localhost conf]# ls -l
總用量 60
-rw-r--r--. 1 root root 2656 10月 14 21:17 nginx.conf
.......
注意:nginx.conf為nginx的配置文件,可以在nginx.conf修改nginx默認配置

02-Nginx負載均衡策略

# 1.輪詢
說明: 默認策略,每個請求會按時間順序逐一分配到不同的后端服務器
# 2.weight 權重
說明: weight參數(shù)用于指定輪詢幾率,weight的默認值為1,;weight的數(shù)值與訪問比率成正比
upstream tomcat-servers {
?? ?server localhost:8080 weight=2;
?? ?server localhost:8081;
?? ?server localhost:8082 backup;
}
注意:1.權重越高分配到需要處理的請求越多。2.此策略可以與least_conn和ip_hash結合使用主要用于后端服務器性能不均
# 3.ip_hash 4%3=1
 說明:指定負載均衡器按照基于客戶端IP的分配方式,這個方法確保了相同的客戶端的請求一直發(fā)送到相同的服務器,以保證session會話。這樣每個訪客都固定訪問一個后端服務器,可以解決session不能跨服務器的問題。
 upstream tomcat-servers {
?? ??? ?ip_hash; #保證每個訪客固定訪問一個后端服務器
?? ??? ?server localhost:8080;
?? ??? ?......
?? ?}
# 4.least_conn
說明: 把請求轉發(fā)給連接數(shù)較少的后端服務器。輪詢算法是把請求平均的轉發(fā)給各個后端,使它們的負載大致相同;但是,有些請求占用的時間很長,會導致其所在的后端負載較高。這種情況下,least_conn這種方式就可以達到更好的負載均衡效果。
upstream tomcat-servers{
?? ?least_conn; #把請求轉發(fā)給連接數(shù)較少的后端服務器
?? ?server localhost:8080;
}

03-Nginx實現(xiàn)Tomcat負載均衡集群

# 0.準備多個tomcat
tar -zxvf apache-tomcat-8.5.46.tar.gz #解壓縮一個新的tomcat安裝包
mv apache-tomcat-8.5.46 tomcat1 #將名稱改為tomcat1
cp -r tomcat1/ tomcat2 #復制一份
cp -r tomcat1/ tomcat3 #復制一份
# 1.此時當前目錄中有三個服務器,如下:
[root@localhost ~]# ls -l
總用量 12248
-rwxrwxrwx. 1 root root 11623939 10月 13 12:25 apache-tomcat-8.5.46.tar.gz
drwxr-xr-x. 9 root root 220 10月 14 21:28 tomcat1
drwxr-xr-x. 9 root root 220 10月 14 21:38 tomcat2
drwxr-xr-x. 9 root root 220 10月 14 21:38 tomcat3
# 2.修改tomcat1端口號:(偽分布式)
vim tomcat1/conf/server.xml,命令修改如下內容:
a.<Server port="8001" shutdown="SHUTDOWN"> ---關閉端口
b.<Connector port="8888" protocol="HTTP/1.1" ---http協(xié)議端口
connectionTimeout="20000"
redirectPort="8443" />
c.<Connector port="10010" protocol="AJP/1.3" redirectPort="8443" /> ---AJP協(xié)議端口
# 3.修改tomcat2端口號:(偽分布式)
vim tomcat2/conf/server.xml,命令修改如下內容:
a.<Server port="8002" shutdown="SHUTDOWN">
b.<Connector port="8889" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
c.<Connector port="10011" protocol="AJP/1.3" redirectPort="8443" />
# 4.修改tomcat3端口號:(偽分布式)
vim tomcat2/conf/server.xml,命令修改如下內容:
a.<Server port="8003" shutdown="SHUTDOWN">
b.<Connector port="8890" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
c.<Connector port="10012" protocol="AJP/1.3" redirectPort="8443" />
# 5.將多個tomcat啟動:
tomcat1/bin/startup.sh
tomcat2/bin/startup.sh
tomcat3/bin/startup.sh
# 6.查看tomcat是否啟動成功
ps -aux|grep tomcat
linux nginx,常用技術,服務器,linux,運維,nginx
# 7.在windows中分別訪問tomcat,都看到主頁代表啟動成功:
http://10.15.0.8:8888/
http://10.15.0.8:8889/
http://10.15.0.8:8890/
注意:這步一定要關閉網(wǎng)路防火墻
# 8.將多個tomcat配置到nginx的配置文件中:
1).進入nginx的sbin目錄關掉nginx服務
./nginx -s stop
2).進入conf目錄,然后編輯nginx.conf文件
vi nginx.conf
3).在server標簽上加入如下配置:
upstream tomcat-servers {
server 192.168.80.130:8090;
server 192.168.80.130:8091;
server 192.168.80.130:8092;
}
4).把配置文件里的如下配置注釋掉(server配置里)
????????location / {
????????????root???html;
????????????index??index.html index.htm;
????????}
5).將配置文件中 location /替換為如下配置:
location / {
proxy_pass http://tomcat-servers;
proxy_redirect off;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_next_upstream http_502 http_504 error timeout invalid_header;
}
linux nginx,常用技術,服務器,linux,運維,nginx
# 9.進入nginx安裝目錄sbin目錄啟動nginx
./nginx -c /usr/nginx/conf/nginx.conf
# 10.訪問nginx,看到其中一個tomcat畫面:
http://10.15.0.8/
linux nginx,常用技術,服務器,linux,運維,nginx

04-nginx.conf配置文件

?? ?4.1、nginx.conf介紹

Nginx的配置文件通常是一個文本文件,通常命名為 nginx.conf ,其內容包括以下幾個方面:
  1. 全局配置:這部分包含了一些全局配置指令,例如 user指令指定Nginx進程的運行用戶, worker_processes指令指定Nginx要啟動的工作進程數(shù)等。
  2. Events配置:這部分包含了一些事件處理相關的配置指令,例如 worker_connections指令指定每個工作進程可以同時處理的連接數(shù), use指令可以指定事件模型,例如 use epolluse kqueue等。
  3. HTTP配置:這部分包含了所有HTTP相關的配置指令,例如 server指令定義了一個HTTP服務器, location指令定義了一個請求的處理位置, proxy_pass指令可以將請求代理到其他服務器等。
下面是一個簡單的Nginx配置文件示例:
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
????worker_connections 1024;
}
http {
????include mime.types;
????default_type application/octet-stream;
????sendfile on;
????keepalive_timeout 65;
????server {
????????listen 80;
????????server_name example.com;
????????location / {
????????????root /var/www/example.com;
????????????index index.html;
????????}
????????location /api/ {
????????????proxy_pass http://api.example.com/;
????????}
????}
}

? ? 4.2、常用指令

4.2.1、aliasalias指令可以將請求的URI映射到本地文件系統(tǒng)中的另一個路徑,從而實現(xiàn)路徑更換的效果。

例如,可以將 http://example.com/resource 映射到 /var/www/cdn/resource ,可以使用以下配置:
location /resource {
????alias /var/www/cdn/resource;
????index index.html;
}
上面的配置將會把 http://example.com/resource 請求映射到本地文件系統(tǒng)的 /var/www/cdn/resource 路徑下,Nginx會自動查找該目錄下的 index.html 文件,并返回給客戶端。如果沒有找到 index.html 文件,則會返回目錄列表。
需要注意的是,使用 alias 指令時,需要指定完整的本地路徑,且路徑中不能包含正則表達式。另外,使用 alias 指令可能會影響性能,因為Nginx需要對每個請求進行一次路徑替換。如果只是簡單的路徑更換,建議使用 rewrite 指令或在應用程序代碼中進行處理。
另外還有一種類似的指令 root ,它也可以將請求的URI映射到本地文件系統(tǒng)中的路徑,但是它會將請求的URI和 root 指定的路徑拼接在一起。例如,如果使用以下配置:
location /resource {
????root /var/www/cdn;
????index index.html;
}
http://example.com/resource 請求會映射到本地文件系統(tǒng)的 /var/www/cdn/resource 路徑下。 root 指令適用于簡單的靜態(tài)文件服務,但是不能實現(xiàn)路徑更換的效果。

4.2.2、autoindex:展示目錄

首先,需要確保目錄的訪問權限設置正確,使得Nginx用戶(一般是 nginx 用戶)有讀取目錄的權限。然后,在Nginx的配置文件中,找到對應的 location 塊,添加 autoindex on 指令即可,例如:
server {
????listen 80;
????server_name example.com;
????location / {
????????root /var/www/example.com;
????????index index.html;
????}
????location /files/ {
????????root /var/www/example.com;
????????autoindex on;
????}
}
上面的配置指定了 /files/ 路徑要展示目錄,當請求 http://example.com/files/ 時,Nginx會自動列出目錄下的所有文件和子目錄,并顯示在網(wǎng)頁上。
可以通過配置 autoindex_format 指令來自定義目錄列表的顯示格式,例如:
location /files/ {
????root /var/www/example.com;
????autoindex on;
????autoindex_format html;
????autoindex_exact_size off;
????autoindex_localtime on;
}
上面的配置指定了使用HTML格式顯示目錄列表,不顯示文件大小的精確值,顯示本地時間而不是GMT時間等。
需要注意的是,展示目錄時,如果目錄下有 index.html 文件,Nginx會優(yōu)先顯示該文件的內容,而不是目錄列表??梢酝ㄟ^修改 index 指令來更改默認的索引文件,例如:
location /files/ {
????root /var/www/example.com;
????autoindex on;
????index index.html index.php;
}
上面的配置將會在目錄中查找 index.html index.php 文件,如果找到了其中一個文件,則優(yōu)先顯示該文件的內容,否則才顯示目錄列表。

4.2.3、proxy_pass表示反向代理的地址,可以將客戶端請求轉發(fā)至該地址指定的后端服務進行處理。

? location? 塊中使用? proxy_pass? 配置項最常見,示例如下:
location /app/ {
??proxy_pass http://localhost:8000/;
??proxy_set_header Host $host;
??proxy_set_header X-Real-IP $remote_addr;
??proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
以上配置將會將包含? /app/? 路徑的請求轉發(fā)至? http://localhost:8000/ ,并將請求頭? Host 、 X-Real-IP 、 X-Forwarded-For? 的參數(shù)傳遞給后端服務。
? proxy_pass? 配置項中,可以指定 HTTP、HTTPS、FTP 等協(xié)議,也可以通過域名指定反向代理的目標。例如:
?? ?1.使用 HTTPS:
location /app/ {
??proxy_pass https://localhost:8000/;
??...
}
?? ?2.使用域名:
location /app/ {
??proxy_pass http://backend.example.com;
??...
}
需要注意的是,對于? proxy_pass? 中指定的地址,如果是域名或者其他需要解析的地址,需要確認 DNS 解析是否正確,同時需要考慮相關安全方案,例如 SSL/TLS 等。此外,在使用? proxy_pass? 時還需要考慮反向代理的性能調優(yōu),例如通過? keepalive 、 proxy_cache? 等配置項進行優(yōu)化,避免反向代理成為系統(tǒng)性能瓶頸。

到了這里,關于linux環(huán)境安裝使用nginx詳解的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 創(chuàng)建網(wǎng)站教程:服務器環(huán)境搭建(MySQL+Jdk+Nginx...),前后端項目部署(技術棧:SSM+Vue),域名+備案【全網(wǎng)最簡單】

    創(chuàng)建網(wǎng)站教程:服務器環(huán)境搭建(MySQL+Jdk+Nginx...),前后端項目部署(技術棧:SSM+Vue),域名+備案【全網(wǎng)最簡單】

    【如有建站方面的需求歡迎 添加微信 ,接私單 】 2024/4/26記,本文寫于1年前,當時建站經驗不夠豐富,文章邏輯混亂,近期重新編寫,希望能幫助更多小伙伴,搭建屬于自己的網(wǎng)站。 我主要以我部署的個人網(wǎng)站:www.pbjlovezjy.com 為例,來講解如何搭建一個網(wǎng)站,源碼如果需要

    2024年04月26日
    瀏覽(37)
  • Linux 環(huán)境 nginx安裝

    Linux 環(huán)境 nginx安裝

    確定環(huán)境是有網(wǎng)的環(huán)境,且yum源可用; 在【Nginx之正向代理與反向代理】一文中我們實現(xiàn)了將Nginx服務器作為正向代理服務器和反向代理服務器,但美中不足的是僅支持http協(xié)議,不支持https協(xié)議。 http協(xié)議:協(xié)議以明文方式發(fā)送數(shù)據(jù),不提供任何方式的數(shù)據(jù)加密。不適合傳輸一

    2024年02月13日
    瀏覽(21)
  • Linux下Web服務器工作模型及Nginx工作原理詳解

    在Linux環(huán)境下,Web服務器處理并發(fā)連接請求的工作模型主要有阻塞、非阻塞、同步、異步等方式。以下是對各種工作模型的淺析: 同步阻塞 I/O: 類比于在餐廳等飯,需要在取餐處等待,期間不能進行其他事情。 同步非阻塞 I/O: 類比于在餐廳等飯,可以進行其他事情,但需

    2024年02月03日
    瀏覽(42)
  • linux 服務器進程、端口查找,nginx 配置日志查找,lsof 命令詳解

    linux 服務器進程、端口查找,nginx 配置日志查找,lsof 命令詳解

    1.1 使用查看端口號對應的進程信息 方式一 : 使用netstat命令 -t:顯示TCP連接 -u:顯示UDP連接 -l:僅顯示監(jiān)聽狀態(tài)的連接 -n:以數(shù)字形式顯示端口號,而不是以服務名稱顯示 通過管道符號|將netstat的輸出結果傳遞給grep命令,用于過濾出包含指定端口號的行。 執(zhí)行命令后,終端

    2024年02月04日
    瀏覽(32)
  • Alibaba Cloud Linux安裝Nginx以及常用命令

    Alibaba Cloud Linux安裝Nginx以及常用命令

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 提示:系統(tǒng)是Alibaba Cloud Linux 3.2104 LTS 64位: 由于我使用的是Alibaba Cloud Linux 系統(tǒng),其他的Linux 系統(tǒng)僅供參考使用! 提示:以下是本篇文章正文內容,下面案例可供參考 這些軟件包是 Nginx 編譯和運行所需

    2024年02月09日
    瀏覽(16)
  • linux[armbian]環(huán)境安裝nginx

    linux[armbian]環(huán)境安裝nginx

    下載Nginx: 訪問[Nginx官方網(wǎng)站](https://nginx.org/),在下載頁面找到最新版本的Nginx??梢赃x擇穩(wěn)定版本或開發(fā)版本,然后點擊相應的下載鏈接。 安裝依賴項: 在安裝Nginx之前,需要安裝一些必要的依賴項,例如編譯工具和庫。對于基于Debian或Ubuntu的系統(tǒng),可以使用以下命令安

    2024年02月12日
    瀏覽(18)
  • Linux環(huán)境下nginx安裝詳細教程,一步步裝上nginx

    Linux環(huán)境下nginx安裝詳細教程,一步步裝上nginx

    安裝Nginx本機環(huán)境 CentOS7.9 下載Nginx安裝包Linux版: Nginx官網(wǎng)下載:https://nginx.org/en/download.html 下載Stable version(即穩(wěn)定版) ? 將壓縮包放入系統(tǒng): 解壓: tar -zxvf nginx-1.22.1.tar.gz 解壓成功: ? 執(zhí)行 ./configure 配置命令: 這里提示 ./configure:error:C compiler cc is not found,是缺少依賴包,

    2023年04月11日
    瀏覽(26)
  • 【NodeMCU-ESP8266】Arduino環(huán)境下建立UDP服務器及WiFiUDP庫常用函數(shù)詳解

    【NodeMCU-ESP8266】Arduino環(huán)境下建立UDP服務器及WiFiUDP庫常用函數(shù)詳解

    目錄 一、UDP協(xié)議概述 ??????? 1、UDP基本概念 ??????? 2、UDP的主要特點 ????????3、UDP的基本報文格式 ?二、ESP8266官方UDP庫相關函數(shù)詳解 三、建立UDP服務器的一般流程 四、ESP8266官方庫 UDP 示例程序演示 五、ESP8266官方庫 UDP 程序運行說明 ????????1、將程序編譯并

    2024年04月24日
    瀏覽(14)
  • Linux系列:開發(fā)環(huán)境搭建:ubuntu圖形界面安裝samba服務器、SSH使用、mount -t cifs 掛載windows共享目錄方法與問題解決

    Linux系列:開發(fā)環(huán)境搭建:ubuntu圖形界面安裝samba服務器、SSH使用、mount -t cifs 掛載windows共享目錄方法與問題解決

    samba一種在局域網(wǎng)上共享文件和打印機的一種通信協(xié)議,它為局域網(wǎng)內的不同計算機之間提供文件及打印機等資源的共享服務。 通常linux開發(fā)環(huán)境要和windows平臺進行文件交互,使用samba進行文件夾共享,這樣會給開發(fā)帶來很大的便利性,samba安裝很簡單,下面介紹一下在ubunt

    2024年02月21日
    瀏覽(42)
  • Linux中Nginx的HTTP和HTTPS常用配置以及proxy_pass詳解

    Linux中Nginx的HTTP和HTTPS常用配置以及proxy_pass詳解

    如果出現(xiàn) (configure arguments: --with-http_ssl_module), 則已安裝(下面的步驟可以跳過,直接進行 第3步 )。 解壓縮下載好的證書(證書一般是pem文件和key文件,這里名字可以隨便改) 將下載好的證書上上傳到服務器,我將證書放在了root目錄下的card文件夾 配置如下:

    2024年02月01日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包