前天整理了下,在centos 6.9 系统下怎么布置四个conf文件。

1、在 /etc/nginx 下创建 vhosts 目录

搭建静态网站,首先供给配备环境。上边的步调,将告诉我们怎么样在服务器上通过
Nginx 铺排 HTTP 静态服务。

方法一:八个.conf方法(优点是灵活,缺点正是站点相比较多布署起来麻烦)

step
1
:在nginx.conf文件所在目录新建conf.d目录,即mkdir
conf.d,为力保权力能够访问到,so chmod 777 conf.d

mkdir /etc/nginx/vhosts

安装 Nginx

那里以布署二个站点(3个域名)为例,n 个站点能够对应增多调整,借使:

step
2
:编辑nginx.conf文件,内容为:

② 、在 /etc/nginx/vhosts/ 里成立1个名字为 example1.com.conf
的文件,把以下内容拷进去

在 CentOS 上,可一向动用 yum 来设置 Nginx

IP地址: 192.168.1.100
域名1 example1.com 放在 /www/example1
域名2 example2.com 放在 /www/example2

#user nobody;
worker_processes 1;

server {

yum install nginx -y

 

error_log /usr/local/nginx/logs/error.log;
error_log /usr/local/nginx/logs/error.log notice;
error_log /usr/local/nginx/logs/error.log info;

listen  80;

设置到位后,使用 nginx 命令运行 Nginx:

配备 nginx virtual hosting 的基本思路和步子如下:

#pid logs/nginx.pid;

server_name  example1.com www. example1.com;

nginx

把3个站点 example1.com, example2.com 放到 nginx 能够访问的目录 /www/

events {
worker_connections 1024;
}

access_log  /www/access_ example1.log  main;

只要无法访问,请重试用 

给种种站点个别创设一个 nginx 配置文件
example1.com.conf,example2.com.conf, 并把计划文件放到
/usr/local/nginx/vhosts/
接下来在 /usr/local/nginx/nginx.conf 里面加一句 include
把手续2成立的布置文件全体分包进来(用 * 号)
重启 nginx

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

location / {

nginx -s reload 

壹 、打开 /usr/local/nginx/nginix.conf 文件,在对应岗位参加 include
把上述3个文件包蕴进来

log_format main ‘$remote_addr – $remote_user [$time_local]
“$request” ‘
‘$status $body_bytes_sent “$http_referer” ‘
‘”$http_user_agent” “$http_x_forwarded_for”‘;

root   /www/example1.com;

一声令下重启 Nginx

user  www www;

access_log /usr/local/nginx/logs/access.log main;

index  index.php index.html index.htm;

布局静态服务器访问路径

worker_processes  1;

sendfile on;
#tcp_nopush on;

}

外网用户访问服务器的 Web 服务由 Nginx 提供,Nginx
必要安插静态财富的路径消息才能透过 url 正确访问到服务器上的静态财富。

 

#keepalive_timeout 0;
keepalive_timeout 65;

error_page   500 502 503 504  /50x.html;

静态网站,NGINX配置多域名。开辟 Nginx 的私下认可配置文件 /etc/nginx/nginx.conf ,修改 Nginx
配置,将暗中认可的 root /usr/share/nginx/html; 修改为: root
/data/www;,如下:

# main server error log

#gzip on;
include /usr/local/nginx/conf/conf.d/*.conf;

location = /50x.html {

演示代码:/etc/nginx/nginx.conf

error_log      /usr/local/nginx/log/nginx/error.log ;

}

root   /usr/share/nginx/html;

user nginx;

worker_processes auto;

error_log /var/log/nginx/error.log;

pid /run/nginx.pid;

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;

    include /etc/nginx/conf.d/*.conf;

    server {

        listen      80 default_server;

        listen      [::]:80 default_server;

        server_name  _;

        root        /data/www;

        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 {

        }

    }

}

pid     /usr/local/nginx/nginx.pid;

step 3:在conf.d目录下随便写个.conf文件,
内容为:

}

计划文件将 /data/www/static 作为具有静态能源请求的根路径,如访问:  /data/www/static/ 目录下去查找 index.js。未来我们要求重启
Nginx 让新的布局生效,如:

 

server{
listen 8888;
server_name localhost;

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

nginx -s reload

events {

 

location ~ .php$ {

重启后,今后大家应当已经足以应用大家的静态服务器了,未来让大家新建三个静态文件,查看服务是或不是运行如常。

worker_connections  51200;

location / {
root /usr/local/nginx/html;
index index.html index.htm;
}
}

fastcgi_pass   127.0.0.1:9000;

率先让我们在 /data 目录 下创建 www 目录,如:

}

step
4:
测试下conf文件格式是不是科学,nginx -t

fastcgi_index  index.php;

mkdir -p /data/www

# main server config

step 5:启动nginx 

fastcgi_param  SCRIPT_FILENAME  /www/example1.com/$fastcgi_script_name;

始建第三个静态文件

http {

step 6:浏览器输入地方访问

include        fastcgi_params;

在 /data/www 目录下创办我们的第①个静态文件 index.html

include       mime.types;

 

}

以身作则代码:/data/www/index.html

default_type  application/octet-stream;

location ~ /.ht {

   

log_format  main  ‘$remote_addr – $remote_user [$time_local]
$request ‘

deny  all;

    第一个静态文件

‘”$status” $body_bytes_sent “$http_referer” ‘

}

Hello world!

‘”$http_user_agent” “$http_x_forwarded_for”‘;

}

近日做客 http://<您的域名>/index.html 应该可以见见页面输出 [Hello
world!]

 

三 、在 /etc/nginx/vhosts/ 里创制3个名字为 example2.com.conf
的文书,把以下内容拷进去

到此,2个根据 Nginx
的静态服务器就搭建实现了,未来享有放在 /data/www 目录下的的静态能源都能够间接通过域名访问。

sendfile        on;

server {

假诺无展现,请刷新浏览器页面

#tcp_nopush     on;

listen  80;

#keepalive_timeout  0;

server_name  example2.com www. example2.com;

keepalive_timeout  65;

access_log  /www/access_ example1.log  main;

gzip  on;

location / {

 

root   /www/example2.com;

server {

index  index.php index.html index.htm;

listen         80;

}

server_name     _;

error_page   500 502 503 504  /50x.html;

access_log      /usr/local/nginx/log/nginx/access.log main;

澳门金沙国际 ,location = /50x.html {

server_name_in_redirect  off;

root   /usr/share/nginx/html;

location / {

}

root  /usr/share/nginx/html;

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

index index.html;

location ~ .php$ {

}

fastcgi_pass   127.0.0.1:9000;

}

fastcgi_index  index.php;

# 包涵全数的虚拟主机的安插文件

fastcgi_param  SCRIPT_FILENAME  /www/example2.com/$fastcgi_script_name;

include /usr/local/nginx/vhosts/*;

include        fastcgi_params;

}

}

 

location ~ /.ht {

2、在 /usr/local/nginx 下创建 vhosts 目录

deny  all;

mkdir /usr/local/nginx/vhosts

}

叁 、在 /usr/local/nginx/vhosts/ 里创造贰个名字为 example1.com.conf
的文件,把以下内容拷进去

}

server {

        listen  80;

        server_name  example1.com www. example1.com;

 

        access_log  /www/access_ example1.log  main;

 

        location / {

            root   /www/example1.com;

            index  index.php index.html index.htm;

        }

 

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   /usr/share/nginx/html;

        }

 

       # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

        location ~ .php$ {

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            fastcgi_param  SCRIPT_FILENAME  /www/example1.com/$fastcgi_script_name;

            include        fastcgi_params;

        }

 

        location ~ /.ht {

            deny  all;

        }

}

四 、打开 /etc/nginix.conf 文件,在相应地点插手 include
把以上三个文本包涵进来

叁 、在 /usr/local/nginx/vhosts/ 里创设一个名字为 example2.com.conf
的文件,把以下内容拷进去

user  nginx;

server {

        listen  80;

        server_name  example2.com www. example2.com;

 

        access_log  /www/access_ example1.log  main;

 

        location / {

            root   /www/example2.com;

            index  index.php index.html index.htm;

        }

 

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   /usr/share/nginx/html;

        }

 

       # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

        location ~ .php$ {

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            fastcgi_param  SCRIPT_FILENAME  /www/example2.com/$fastcgi_script_name;

            include        fastcgi_params;

        }

 

        location ~ /.ht {

            deny  all;

        }

}

worker_processes  1;

5、重启 Nginx

# main server error log

 

/etc/init.d/nginx restart

 

方法二:动态目录方法(优点是方便,每个域名对应一个文件夹,缺点是不灵活)

 

error_log       /var/log/nginx/error.log ;

本条简单的主意比起为每三个域名建立3个 vhost.conf
配置文件来讲,只需求在存活的配备文件中追加如下内容:

pid     /var/run/nginx.pid;

 

events {

# Replace this port with the right one for your requirements
# 依照你的须要变动此端口
listen       80;  #could also be 1.2.3.4:80 也能够是1.2.3.4:80的情势
# Multiple hostnames seperated by spaces.  Replace these as well.
#
五个主机名能够用空格隔离,当然那几个新闻也是须要遵守你的须求而更改的。
server_name  star.yourdomain.com *.yourdomain.com
;
#Alternately: _ *
#还能够采取:_ * (具体内容参见本维基其余页面)
root /PATH/TO/WEBROOT/$host;
error_page  404              ;
access_log  logs/star.yourdomain.com.access.log;
location / {
root   /PATH/TO/WEBROOT/$host/;
index  index.php;
}

worker_connections  1024;

# serve static files directly

}

# 直接支持静态文件 (从布署上看来不是直接帮衬啊)
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|html)$ {
access_log        off;
expires           30d;
}
location ~ .php$ {
# By all means use a different server for the fcgi processes if you
need to
# 假使急需,你能够为不一样的FCGI进度设置分裂的劳务消息
fastcgi_pass   127.0.0.1:YOURFCGIPORTHERE;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME 
/PATH/TO/WEBROOT/$host/$fastcgi_script_name;
fastcgi_param  QUERY_STRING     $query_string;
fastcgi_param  REQUEST_METHOD   $request_method;
fastcgi_param  CONTENT_TYPE     $content_type;
fastcgi_param  CONTENT_LENGTH   $content_length;
fastcgi_intercept_errors on;
}
location ~ /.ht {
deny  all;
}

# main server config

 

http {

末段附此外一个二级域名匹配的不二法门

include       mime.types;

 

default_type  application/octet-stream;

绑定域名
server_name *.abcd.com;
得到主机名
if ( $host ~* (.*).(.*).(.*))
{
set $domain $1;
}
概念目录
root html/abc/$domain/;
location /
{
root html/abcd/$domain;
index index.html index.php;

log_format  main  ‘$remote_addr – $remote_user [$time_local] $request ‘

‘”$status” $body_bytes_sent “$http_referer” ‘

‘”$http_user_agent” “$http_x_forwarded_for”‘;

sendfile        on;

#tcp_nopush     on;

#keepalive_timeout  0;

keepalive_timeout  65;

gzip  on;

server {

listen         80;

server_name     _;

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

server_name_in_redirect  off;

location / {

root  /usr/share/nginx/html;

index index.html;

}

}

# 包涵全体的虚拟主机的陈设文件

include /usr/local/etc/nginx/vhosts/*;

}

5、重启 Nginx

/etc/init.d/nginx restart

相关文章