天天看點

Nginx如何配置一個靜态WEB服務?

一、配置檔案的文法格式:

先來看一個簡單的nginx 配置

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
location /nginx_status {
           stub_status on;
           access_log   off;
}
}
}
           

上述配置中的events、http、server、location、upstream等屬于配置項塊。而worker_processes 、worker_connections、include、listen 屬于配置項塊中的屬性。 /nginx_status 屬于配置塊的特定參數參數。其中server塊嵌套于http塊,其可以直接繼承通路Http塊當中的參數。

配置塊 名稱開頭用大括号包裹其對應屬性

屬性 基于空格切分屬性名與屬性值,屬性值可能有多個項 都以空格進行切分

參數 其配置在 塊名稱與大括号間,其值如果有多個也是通過空格進行拆

二、配置第一個靜态WEB服務

1.建立站點目錄

mkdir -p /usr/www/snowman
           

2.編寫靜态檔案

echo 'the first static site' > first.html
           

3.配置 nginx.conf

配置server和location

在nginx.conf中原本就存在server,可以重新配置一個同級别的server,多個同端口的server保證server_name不相同就行了,這裡就直接示範原本配置的server就好了

Nginx如何配置一個靜态WEB服務?

在這裡情境下

  • “location /”比對輸入改虛拟機ip的請求;
  • “root /usr/www/snowman”表示到/usr/www/snowman路徑下去找檔案;
  • “index first.html”表示如果請求沒有制定檔案就用改預設檔案。

(注:如果local /後面還加路徑,會被加到root後面,例:local /aaa,那麼在找的時候就找/usr/www/snowman/aaa)

儲存退出,./sbin/nginx -s reload重載

輸入虛拟機IP進行通路就能通路到剛剛建立的那個html

Nginx如何配置一個靜态WEB服務?

三、基本配置介紹說明

1.監聽端口

文法:listen address:

預設:listen 80;

配置塊:server

2.主機名稱

文法:server_name name[……];

預設:server_name “”;

server_name後可以跟多個主機名稱,如

server_name www.aaa.com、bbb.aaa.com;

。 支援通配符與正則

3.location

文法:location[=|~|~*|^~|@]/uri/{……}

  • / 基于uri目錄比對
  • =表示把URI作為字元串,以便與參數中的uri做完全比對。
  • ~表示正則比對URI時是字母大小寫敏感的。
  • ~*表示正則比對URI時忽略字母大小寫問題。
  • ~表示正則比對URI時隻需要其前半部分與uri參數比對即可。

如需上雲,可考慮如下阿裡雲伺服器,活動有優惠。

阿裡雲伺服器: 活動位址

購買可領取:

阿裡雲代金券

購買前可以測一下阿裡雲哪個節點的雲伺服器速度快:

https://ping.gaomeluo.com/aliyun/

原文:

https://blog.gaomeluo.com/archives/nginxpeizhiweb/

繼續閱讀