Nginx multisite configuration

Keywords: Nginx sudo PHP vim

1, Create site profile

1. Create the conf.d folder and configuration file in the nginx conf directory, assuming the site is www.a.com

$ pwd  
/usr/local/nginx/conf  
$ sudo mkdir conf.d
$ sudo vim conf.d/www.a.com.conf #New site profile  

2. Write the following content into the www.a.com.conf file, which can be modified by intercepting the server node from the nginx.cnf file.

Modify the following two points:

Server name www.a.com; www.a.com is the domain name

root /home/www/www.a.com; file storage directory, where www.a.com is the folder name

The results are as follows:

server {  
     listen       9999;  
     server_name  www.a.com; #www.a.com is the domain name  

     #charset koi8-r;  

     #access_log  logs/host.access.log  main;  

     location / {  
         root   /home/www/www.a.com; #File storage directory, where www.a.com is the folder name  
         index  index.html index.htm;  
     }  

     #error_page  404              /404.html;  

     # redirect server error pages to the static page /50x.html  
     #  
     error_page   500 502 503 504  /50x.html;  
     location = /50x.html {  
         root   html;  
     }  
 }  

2, Create Nginx profile

Add include conf.d / *. Conf at the bottom of http node; nginx configuration files are loaded in sequence!

The modification is completed as follows:

#user  nobody;  
worker_processes  1;  

#error_log  logs/error.log;  
#error_log  logs/error.log  notice;  
#error_log  logs/error.log  info;  

#pid        logs/nginx.pid;  


events {  
    worker_connections  1024;  
}  


http {  
    include       mime.types;  
    default_type  application/octet-stream;  

    #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  logs/access.log  main;  

    sendfile        on;  
    #tcp_nopush     on;  

    #keepalive_timeout  0;  
    keepalive_timeout  65;  

    #gzip  on;  

    server {  
        listen       80;  
        server_name  localhost;  

        #charset koi8-r;  

        #access_log  logs/host.access.log  main;  

        location / {  
            root   html;  
            index  index.html index.htm;  
        }  

        #error_page  404              /404.html;  

        # redirect server error pages to the static page /50x.html  
        #  
        error_page   500 502 503 504  /50x.html;  
        location = /50x.html {  
            root   html;  
        }  

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80  
        #  
        #location ~ \.php$ {  
        #    proxy_pass   http://127.0.0.1;  
        #}  

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000  
        #  
        #location ~ \.php$ {  
        #    root           html;  
        #    fastcgi_pass   127.0.0.1:9000;  
        #    fastcgi_index  index.php;  
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;  
        #    include        fastcgi_params;  
        #}  

        # deny access to .htaccess files, if Apache's document root  
        # concurs with nginx's one  
        #  
        #location ~ /\.ht {  
        #    deny  all;  
        #}  
    }  


    # another virtual host using mix of IP-, name-, and port-based configuration  
    #  
    #server {  
    #    listen       8000;  
    #    listen       somename:8080;  
    #    server_name  somename  alias  another.alias;  

    #    location / {  
    #        root   html;  
    #        index  index.html index.htm;  
    #    }  
    #}  


    # HTTPS server  
    #  
    #server {  
    #    listen       443 ssl;  
    #    server_name  localhost;  

    #    ssl_certificate      cert.pem;  
    #    ssl_certificate_key  cert.key;  

    #    ssl_session_cache    shared:SSL:1m;  
    #    ssl_session_timeout  5m;  

    #    ssl_ciphers  HIGH:!aNULL:!MD5;  
    #    ssl_prefer_server_ciphers  on;  

    #    location / {  
    #        root   html;  
    #        index  index.html index.htm;  
    #    }  
    #}  

    include  /usr/local/nginx/conf/conf.d/*.conf; #Load multisite profile
    } 

3, Create test environment

1. Create test page information

$ pwd  
/home
$ sudo mkdir -p www/www.a.com  
$ sudo sh -c "echo Hello World>www/www.a.com/index.html"  
$ cat www/www.a.com/index.html  #View writes  
Hello World 

2. Modify the local hosts file and add www.a.com to jump to 127.0.0.1

t$ sudo vim /etc/hosts  
$ cat /etc/hosts|grep www.a.com # View modification results  
127.0.0.1   www.a.com 

4, Restart Nginx. For Nginx service configuration, see Ubuntu 12.04 Nginx installation record

$ sudo service nginx restart  

Posted by frontlines on Mon, 04 May 2020 13:33:59 -0700