最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx服務(wù)器安裝與配置指南

 更新時(shí)間:2025年10月11日 11:58:26   作者:別多香了  
Nginx是一個(gè)高性能的HTTP和反向代理服務(wù)器,能支持大量并發(fā)連接,消耗較低的系統(tǒng)資源,適合用作生產(chǎn)環(huán)境的Web服務(wù)器,本文給大家介紹Nginx服務(wù)器安裝與配置指南,感興趣的朋友跟隨小編一起看看吧

Nginx服務(wù)器配置

一、Nginx 簡(jiǎn)介

Nginx 是一款高性能的 HTTP 和反向代理服務(wù)器,其核心優(yōu)勢(shì)在于:

  • 采用高效的網(wǎng)絡(luò) I/O 模型(epoll、kqueue、eventport 等)
  • 支持高達(dá) 5 萬(wàn)個(gè)并發(fā)連接
  • 系統(tǒng)資源(內(nèi)存、CPU)消耗低
  • 運(yùn)行穩(wěn)定,適合作為生產(chǎn)環(huán)境的 web 服務(wù)器

二、Nginx 安裝與基礎(chǔ)配置

1. 安裝與啟動(dòng)

# 使用 yum 包管理器安裝 nginx
[root@server ~ 14:30:54]# yum -y install nginx
# 設(shè)置 nginx 開(kāi)機(jī)自啟并立即啟動(dòng)
# enable: 開(kāi)機(jī)自啟;--now: 立即啟動(dòng)
[root@server ~ 14:30:54]# systemctl enable nginx.service --now

2. 配置主頁(yè)與測(cè)試

# 備份默認(rèn)主頁(yè)
[root@server ~ 23:19:05]# mv /usr/share/nginx/html/index.html{,.ori}
# 創(chuàng)建自定義主頁(yè)內(nèi)容
[root@server ~ 23:19:42]# echo nihao > /usr/share/nginx/html/index.html

3. 防火墻配置

# 永久開(kāi)放 http 服務(wù)(80端口)
[root@server ~ 14:33:53]# firewall-cmd --add-service=http --permanent
# 重新加載防火墻規(guī)則使配置生效
[root@server ~ 14:33:53]# firewall-cmd --reload

4. 測(cè)試配置

# 測(cè)試訪問(wèn)
[root@server ~ 23:20:13]# curl http://www.server.cloud
curl: (6) Could not resolve host: www.server.cloud; 未知的錯(cuò)誤
[root@server ~ 23:21:00]# vim /etc/hosts
# windows客戶端修改C:\Windows\System32\drivers\etc\hosts
# Linux或Unix修改 /etc/hosts
# 添加如下記錄
10.1.8.10 www.server.cloud #ip為實(shí)際ip

三、虛擬主機(jī)配置

虛擬主機(jī)允許在同一臺(tái)服務(wù)器上部署多個(gè)網(wǎng)站,主要有兩種實(shí)現(xiàn)方式:

1. 基于域名的虛擬主機(jī)

# 創(chuàng)建虛擬主機(jī)配置文件,從nginx.conf中抄格式
[root@server ~ 23:23:37]# vim /etc/nginx/nginx.conf
[root@server ~ 23:24:05]# vim /etc/nginx/conf.d/vhost-name.conf

配置內(nèi)容:

#第一個(gè)虛擬主機(jī)
server {
    server_name  www1.server.cloud;  # 綁定的域名
    root         /usr/share/nginx/web1;  # 網(wǎng)站根目錄
}
#第二個(gè)虛擬主機(jī)
server {
    server_name  www2.server.cloud;  # 綁定的域名
    root         /usr/share/nginx/web2;  # 網(wǎng)站根目錄
}

測(cè)試與驗(yàn)證

#先創(chuàng)建root中所填目錄
[root@server ~ 23:31:06]# mkdir /usr/share/nginx/web1
[root@server ~ 23:31:13]# mkdir /usr/share/nginx/web2
#寫(xiě)入網(wǎng)站內(nèi)容
[root@server ~ 23:31:30]# echo abc > /usr/share/nginx/web1/index.html
[root@server ~ 23:31:42]# echo ooo > /usr/share/nginx/web2/index.html
#修改主機(jī)配置
[root@server ~ 23:32:37]# vim /etc/hosts
10.1.8.10  web1.server.cloud
10.1.8.10  web2.server.cloud
#重啟服務(wù)并測(cè)試web頁(yè)面
[root@server ~ 23:53:04]# systemctl restart nginx.service
[root@server ~ 23:33:41]# curl http://web1.server.cloud
abc
[root@server ~ 23:33:46]# curl http://web2.server.cloud
ooo

2. 基于端口的虛擬主機(jī)

# 創(chuàng)建端口虛擬主機(jī)配置文件
#繼續(xù)從nginx.conf里面粘貼,這次要把端口也粘貼出來(lái)
[root@server ~ 15:58:28]# vim /etc/nginx/conf.d/vhost-port.conf

配置內(nèi)容:

# 監(jiān)聽(tīng) 8081 端口的虛擬主機(jī)
server {
    listen       8081;  # 監(jiān)聽(tīng)端口
    server_name  server.cloud;  # 綁定域名
    root         /usr/share/nginx/8081;  # 網(wǎng)站根目錄
}
# 監(jiān)聽(tīng) 8082 端口的虛擬主機(jī)
server {
    listen       8082;  # 監(jiān)聽(tīng)端口
    server_name  server.cloud;  # 綁定域名
    root         /usr/share/nginx/8082;  # 網(wǎng)站根目錄
}

測(cè)試與驗(yàn)證

#創(chuàng)建目錄
[root@server ~ 23:45:29]# mkdir /usr/share/nginx/8081
[root@server ~ 23:46:01]# mkdir /usr/share/nginx/8082
[root@server ~ 23:46:03]# echo qwer > /usr/share/nginx/8082/index.html
[root@server ~ 23:46:34]# echo cpdd > /usr/share/nginx/8081/index.html
#重啟服務(wù)!并測(cè)試
[root@server ~ 23:53:04]# systemctl restart nginx.service 
[root@server ~ 23:53:41]# curl http://server.cloud:8081
cpdd
[root@server ~ 23:53:44]# curl http://server.cloud:8082
qwer

四、SSL/TLS 配置(HTTPS)

1. 生成 SSL 證書(shū)

# 1. 生成 2048 位的私鑰文件
[root@server ~ 23:53:48]# openssl genrsa -out www.key 2048
# 2. 生成證書(shū)請(qǐng)求文件(CSR)
# -subj 參數(shù)指定證書(shū)信息:國(guó)家/省份/城市/組織/部門(mén)/域名/郵箱
[root@server ~ 23:58:24]# openssl req -new -key www.key -o
ut www.csr -subj "/C=CN/ST=JS/L=NJ/O=LM/OU=DEVOPS/CN=www.server.cloud/emailAddress=server@server.cloud" 
# 注意:CN 的值必須與網(wǎng)站域名一致
# 3. 使用私鑰對(duì)請(qǐng)求文件簽名,生成自簽名證書(shū)(有效期 3650 天)
[root@server ~ 23:59:00]#  openssl x509 -req -days 3650 -in www.csr -signkey www.key -out www.crt

2. 配置 HTTPS 站點(diǎn)

# 創(chuàng)建證書(shū)存放目錄
[root@server ~ 23:59:14]# mkdir /etc/ssl/certs/www.server.cloud
# 移動(dòng)證書(shū)文件到指定目錄
[root@server ~ 00:00:56]# ls
anaconda-ks.cfg  www.crt  www.csr  www.key
[root@server ~ 00:01:26]# mv www* /etc/ssl/certs/www.server.cloud
# 編輯 HTTPS 配置文件
#一定要把ssl.conf文件創(chuàng)建在/etc/nginx/conf.d/下,不然無(wú)法識(shí)別
[root@server ~ 00:26:24]# vim /etc/nginx/conf.d/ssl.conf

配置內(nèi)容:

server {
    # 監(jiān)聽(tīng) 443 端口(HTTPS 默認(rèn)端口),啟用 SSL 和 HTTP/2
    listen       443 ssl http2 default_server;
    listen       [::]:443 ssl http2 default_server;
    server_name  www.server.cloud;  # 綁定域名
    root         /usr/share/nginx/html;  # 網(wǎng)站根目錄
    # 配置證書(shū)路徑
    ssl_certificate "/etc/ssl/certs/www.server.cloud/www.crt";  # 公鑰證書(shū)
    ssl_certificate_key "/etc/ssl/certs/www.server.cloud/www.key";  # 私鑰
}

3. 配置 HTTP 重定向到 HTTPS

# 編輯 nginx 主配置文件
[root@server ~ 00:28:08]#  vim /etc/nginx/nginx.conf

添加重定向配置:

server {
    listen       80 default_server;  # 監(jiān)聽(tīng) 80 端口(HTTP)
    listen       [::]:80 default_server;
    server_name  www.server.cloud;
    root         /usr/share/nginx/html;
    # 301 永久重定向到 HTTPS
    # $host: 域名;$request_uri: 請(qǐng)求路徑
    return       301 https://$host$request_uri;
}

4. 重啟服務(wù)與防火墻配置

# 重啟 nginx 使配置生效
[root@server ~ 00:29:59]# systemctl restart nginx.service
# 開(kāi)放 HTTPS 服務(wù)(443 端口)
[root@www ~]# firewall-cmd --add-service=https --permanent
[root@www ~]# firewall-cmd --reload
# 測(cè)試重定向(會(huì)自動(dòng)跳轉(zhuǎn)到 HTTPS)
[root@server ~ 00:30:18]# curl http://www.server.cloud/
<html>
<head><title>301 Moved Permanently</title></head>
<body>
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx/1.20.1</center>
</body>
</html>
# 測(cè)試 HTTPS 訪問(wèn)(-k 忽略證書(shū)驗(yàn)證,自簽名證書(shū)需要此參數(shù))
[root@server ~ 00:30:38]# curl -k https://www.server.cloud/
mmm

五、支持動(dòng)態(tài)腳本

配置 PHP 支持

# 安裝 PHP 及相關(guān)組件
[root@server ~ 11:37:36]# yum install -y php php-fpm
[root@server ~ 11:37:36]# yum install -y php-gd php-common php-pear php-mbstring php-mcrypt
# 查看 PHP 版本
[root@server ~ 11:37:53]# php -v
# 簡(jiǎn)單測(cè)試 PHP 是否正常工作
[root@server ~ 11:38:01]# echo "<?php echo 'PHP Test Page'.\"\n\"; ?>" > php_test.php 
[root@server ~ 11:38:19]# php php_test.php 
PHP Test Page
# 創(chuàng)建 PHP 信息測(cè)試頁(yè)
[root@server ~ 11:38:28]# echo "<?php phpinfo(); ?>" > /usr/share/nginx/html/info.php 

配置 Nginx 解析 PHP:

# 編輯 nginx 主配置文件
[root@server ~ 11:39:14]# vim /etc/nginx/nginx.conf

在http塊中,server塊外添加:types{},隨即把include /etc/nginx/mime.types;移入

 types {
        # 這行必須放在 types 塊內(nèi)部,引入 mime.types 的內(nèi)>容
        include /etc/nginx/mime.types;
        # (可選)若有額外的MIME類型,可在這里補(bǔ)充,如:
        # application/x-httpd-php  php;
        # application/x-httpd-php-source  phps;
    default_type        application/octet-stream;
    }

在 server 塊中添加:

 location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;

測(cè)試 PHP 解析:

[root@server ~ 17:05:18]# curl http://www.server.cloud/info.php

反向代理

客戶端訪問(wèn)代理服務(wù)器,代理服務(wù)器會(huì)將客戶端請(qǐng)求發(fā)送給真實(shí)服務(wù)器。

反向代理實(shí)現(xiàn)了隱藏內(nèi)部服務(wù)器。

角色說(shuō)明

  • 代理服務(wù)器 proxy 10.1.8.20
  • 真實(shí)服務(wù)器 server 10.1.8.10

代理服務(wù)器配置

# 配置解析
[root@proxy ~ 00:33:19]# echo '10.1.8.10 www.server.cloud' >> /etc/hosts
# 安裝 nginx
[root@proxy ~ 00:33:40]# yum -y install nginx
# 啟動(dòng) nginx
[root@proxy ~ 00:34:05]# systemctl enable --now nginx
# 防火墻
[root@proxy ~]# firewall-cmd --add-service=http --permanent
[root@proxy ~]# firewall-cmd --reload
# 配置代理,server部分更改如下
[root@proxy ~ 00:34:13]# vim /etc/nginx/nginx.conf
# change [server] section like follows
    server {
        listen      80 default_server;
        listen      [::]:80 default_server;
        server_name _;
        root         /usr/share/nginx/html;
        #添加如下內(nèi)容
        proxy_redirect      off;
        proxy_set_header    X-Real-IP $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header    Host $http_host;
        ......
        #新增 location 規(guī)則
        location /proxy/ {
            proxy_pass http://www.server.cloud/;
        }
    }
[root@proxy ~]# systemctl restart nginx
# If SELnux is enabled, change boolean setting.
[root@proxy ~]# setsebool -P httpd_can_network_connect on

真實(shí)服務(wù)器配置

# 安裝nginx
[root@proxy ~ 16:17:52]# yum -y install nginx
# 啟動(dòng)nginx
[root@proxy ~ 16:18:32]# systemctl enable --now nginx
# 防火墻
[root@www ~]# firewall-cmd --add-service=http --permanent
[root@www ~]# firewall-cmd --reload
# 準(zhǔn)備測(cè)試頁(yè)
[root@server ~ 00:41:55]#  echo hello laoma > /usr/share/nginx/html/proxy/test.html
# 測(cè)試效果
[root@server ~ 00:44:58]# curl http://www.server.cloud/proxy/test.html
<html>
<head><title>301 Moved Permanently</title></head>
<body>
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx/1.20.1</center>
</body>
</html>
#配置的重定向還在所以用https訪問(wèn)
[root@server ~ 00:45:42]# curl -k https://www.server.cloud/proxy/test.html
hello laoma

到此這篇關(guān)于Nginx服務(wù)器安裝與配置指南的文章就介紹到這了,更多相關(guān)nginx服務(wù)器配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • nginx 429狀態(tài)碼排查與處理方式

    nginx 429狀態(tài)碼排查與處理方式

    這篇文章主要介紹了nginx 429狀態(tài)碼排查與處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-07-07
  • Crontab+Shell做Nginx日志切割腳本實(shí)例代碼

    Crontab+Shell做Nginx日志切割腳本實(shí)例代碼

    本篇文章主要介紹了Crontab+Shell做Nginx日志切割腳本實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • nginx攔截非法host或直接使用ip訪問(wèn)的請(qǐng)求的實(shí)現(xiàn)

    nginx攔截非法host或直接使用ip訪問(wèn)的請(qǐng)求的實(shí)現(xiàn)

    非法攔截可以有效防止直接通過(guò)IP或本地綁定域名的方式進(jìn)行非法訪問(wèn),本文主要介紹了nginx攔截非法host或直接使用ip訪問(wèn)的請(qǐng)求的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-12-12
  • 使用nginx打包部署前端vue項(xiàng)目完整過(guò)程(保姆級(jí)教程)

    使用nginx打包部署前端vue項(xiàng)目完整過(guò)程(保姆級(jí)教程)

    這篇文章主要給大家介紹了關(guān)于使用nginx打包部署前端vue項(xiàng)目的相關(guān)資料,包括打包命名、執(zhí)行打包命令、檢查打包成功、下載和解壓Nginx、部署到Nginx、啟動(dòng)Nginx并訪問(wèn)項(xiàng)目、以及Nginx的優(yōu)勢(shì),需要的朋友可以參考下
    2024-11-11
  • Nginx實(shí)現(xiàn)流量控制的示例代碼

    Nginx實(shí)現(xiàn)流量控制的示例代碼

    本文主要介紹了Nginx實(shí)現(xiàn)流量控制的示例代碼,可以用來(lái)限制用戶在給定時(shí)間內(nèi)HTTP請(qǐng)求的數(shù)量,保護(hù)服務(wù)器,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • Nginx timeout超時(shí)配置詳解

    Nginx timeout超時(shí)配置詳解

    這篇文章主要介紹了Nginx timeout超時(shí)配置詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Nginx跨域訪問(wèn)場(chǎng)景配置和防盜鏈詳解

    Nginx跨域訪問(wèn)場(chǎng)景配置和防盜鏈詳解

    這篇文章主要介紹了Nginx跨域訪問(wèn)場(chǎng)景配置和防盜鏈詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Nginx 代理頭部傳遞的實(shí)現(xiàn)

    Nginx 代理頭部傳遞的實(shí)現(xiàn)

    Nginx默認(rèn)會(huì)傳遞一些頭部信息,本文就來(lái)介紹一下Nginx 代理頭部傳遞的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-02-02
  • 編寫(xiě)Go程序?qū)ginx服務(wù)器進(jìn)行性能測(cè)試的方法

    編寫(xiě)Go程序?qū)ginx服務(wù)器進(jìn)行性能測(cè)試的方法

    這篇文章主要介紹了編寫(xiě)Go程序?qū)ginx服務(wù)器進(jìn)行性能測(cè)試的方法,包括對(duì)其負(fù)載均衡和緩存等方面的測(cè)試,極力推薦!需要的朋友可以參考下
    2015-06-06
  • nginx中server_name配置域名不生效

    nginx中server_name配置域名不生效

    本文主要介紹了nginx中server_name配置域名不生效
    2025-05-05

最新評(píng)論

昭通市| 年辖:市辖区| 阳城县| 怀仁县| 绵竹市| 大庆市| 成安县| 沅江市| 乌拉特中旗| 明溪县| 小金县| 安庆市| 石家庄市| 宕昌县| 广安市| 蕲春县| 隆化县| 泸西县| 蓝田县| 大英县| 宁都县| 金沙县| 余干县| 敖汉旗| 伊吾县| 东乡| 彭水| 即墨市| 保山市| 晋城| 五寨县| 府谷县| 甘洛县| 湟源县| 抚松县| 集安市| 黎城县| 喀喇| 韩城市| 绍兴市| 鄂伦春自治旗|