Probleme mit dem Nginx-Konfigurationsservermodul
世界只因有你
世界只因有你 2017-05-16 17:09:58
0
3
560

Angenommen, es gibt 5 Domänennamen der zweiten Ebene:

aaa.example.com
bbb.example.com
ccc.example.com
ddd.example.com
eee.example.com

Bei der Konfiguration von Nginx sieht das Servermodul so aus:

server {
    listen 443 ssl http2;
    
    server_name  aaa.example.com;
    
    root   /var/www/aaa.example.com/public;
    index  index.php index.html index.htm;
    
    location / {
        root   /var/www/aaa.example.com/public;
        try_files $uri $uri/ /index.php?$query_string;
        index  index.php index.html index.htm;
    }


    location ~ \.php$ {
        try_files $uri /index.php =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass   unix:/dev/shm/php-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
    
    #...
    #...
    #...
}

Frage:
1. Es gibt 5 Domänennamen der zweiten Ebene. Muss ich 5 Servermodule schreiben? Kann ich ein Allzweck-Servermodul schreiben, das nur eines verwendet?

2. Wenn 5 Servermodule geschrieben werden, können die location ~ .php${ }模块是一样的,这个location ~ .php${ } Module in jedem Servermodul nur einmal zum Teilen geschrieben werden? Das heißt, kann es in das http-Modul verschoben werden, das obere Modul des Servermoduls?

3. In vielen Beispielen müssen Root und Index zweimal geschrieben werden, einmal im Server und noch einmal im Modul der nächsten Ebene location / { }.

世界只因有你
世界只因有你

Antworte allen(3)
我想大声告诉你
server_name ~^(?<site>(aa|bb|cc)\.example\.com)$;
root /var/www/$site/public; # location 里的root如果一样,可以不需要了,index也一样,大多数人是复制的
巴扎黑

1.当你的5个域名指向同一根目录,表示同一站点时,server_name可以指定多个域名,用空格分隔;当你的5个域名表示不同站点,就要配置多个server段,通常用include指令来引入多个conf文件,每个域名是一个conf文件。
2.location 指令只能是在server、location里;详见官方文档说明:

3.location里的root index 可以共用server里的root index.

淡淡烟草味

server name是可以指定多个域名的,用空格分隔

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage