Nginx Http Location 配置

關(guān)閉防火墻
systemctl stop firewalld
systemctl disable firewalld

安裝nginx
yum install nginx

啟動(dòng)nginx
service nginx start

nginx默認(rèn)配置文件路徑
/etc/nginx/nginx.conf

nginx默認(rèn)配置文件內(nèi)容

# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;

events {
    worker_connections 1024;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;

    server {
    listen       80 default_server;
    listen       [::]:80 default_server;
    server_name  _;
    root         /usr/share/nginx/html;

    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / {
    }

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
    }

# Settings for a TLS enabled server.
#
#    server {
#        listen       443 ssl http2 default_server;
#        listen       [::]:443 ssl http2 default_server;
#        server_name  _;
#        root         /usr/share/nginx/html;
#
#        ssl_certificate "/etc/pki/nginx/server.crt";
#        ssl_certificate_key "/etc/pki/nginx/private/server.key";
#        ssl_session_cache shared:SSL:1m;
#        ssl_session_timeout  10m;
#        ssl_ciphers HIGH:!aNULL:!MD5;
#        ssl_prefer_server_ciphers on;
#
#        # Load configuration files for the default server block.
#        include /etc/nginx/default.d/*.conf;
#
#        location / {
#        }
#
#        error_page 404 /404.html;
#            location = /40x.html {
#        }
#
#        error_page 500 502 503 504 /50x.html;
#            location = /50x.html {
#        }
#    }

}

查看nginx啟動(dòng)了多久
ps -p cat /run/nginx.pid -o etime=

測試,在/etc/nginx/conf.d/添加新的server app1, app2
server {

        listen 80;
        servername app1.com www.app1.com;
        location / {
            root /usr/share/nginx/html/app1;
        }
    }

    server {

        listen 80;
        servername app2.com www.app2.com;
        location / {
            root /usr/share/nginx/html/app2;
        }
    }

    在創(chuàng)建/usr/share/ngin/html 下創(chuàng)建 app1/index.html 和 app2/index.html
    重啟nginx:  nginx -s reload
    訪問172.16.20.79 默認(rèn)app1.com, 再訪問app1.com 和 app2.com

修改端口,跳到默認(rèn)default_server或者順序第一個(gè)可以提供服務(wù)的server
    在 app2.com的server配置中,在listen 80后面加 default_server ,然后訪問172.16.20.79,頁面顯示app2.com
    如果不希望相應(yīng)沒有host HTTP頭的,添加下面的配置
    server {
        listen 80;
        server_name "" localhost 127.0.0.1 172.16.20.79;
        return 444;  # 不響應(yīng),并關(guān)閉連接
    }

Location參數(shù)
最長匹配原則
~* 不分大小寫匹配
~ 區(qū)分大小寫匹配
^~ uri如果開頭等于這個(gè)值,不再嘗試正則匹配
= 精準(zhǔn)匹配,將常用URL用這個(gè)寫法,可以提供性能,因?yàn)閚ginx不需要進(jìn)行搜索

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評(píng)論 19 139
  • 配置運(yùn)行Nginx服務(wù)器用戶(組) 用于配置運(yùn)行Nginx服務(wù)器用戶(組)的指令是user,其語法格式為: use...
    吃瓜的東閱讀 4,685評(píng)論 0 41
  • Page 1:nginx 服務(wù)器安裝及配置文件詳解 CentOS 6.2 x86_64 安裝 nginx 1.1 ...
    xiaojianxu閱讀 8,680評(píng)論 1 41
  • I/O模型Nginx介紹Nginx的安裝和目錄結(jié)構(gòu)Nginx的配置Nginx的編譯安裝 一、I/O模型 (一)I/...
    哈嘍別樣閱讀 972評(píng)論 0 4
  • Nginx簡介 解決基于進(jìn)程模型產(chǎn)生的C10K問題,請(qǐng)求時(shí)即使無狀態(tài)連接如web服務(wù)都無法達(dá)到并發(fā)響應(yīng)量級(jí)一萬的現(xiàn)...
    魏鎮(zhèn)坪閱讀 2,214評(píng)論 0 9

友情鏈接更多精彩內(nèi)容