Centos7 nginx配置多虚拟主机过程

一.前提准备

1.已经安装好了的Centos7服务器

2.ip 为192.168.1.209   [本次的配置ip]

3.确定防火墙等已经关闭

二.nignx配置文件参数详解

要配置多台虚拟主机,就需要对配置文件先进行了解,所有以下为配置项详解

#定义nginx工作进程数
worker_processes ;
#错误日志
#error_log logs/error.log;
#http定义代码主区域
http {
  include       mime.types;
  default_type application/octet-stream;
  #定义nginx的访问日志功能
  #nginx会有一个accses.log功能,查看用户访问的记录
  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;
  keepalive_timeout ;
  #开启gzip压缩传输
  gzip on;
  #虚拟主机1 定义一个 斗鱼网站
  server {
      #定义nginx的访问入口端口,访问地址是 192.168.11.37:
      listen       ;
      #定义网站的域名www.woshidouyu.tv
      #如果没有域名,就填写服务器的ip地址 192.168.11.37
      server_name www.woshidouyu.tv;
      #nginx的url域名匹配
      #只要请求来自于www.woshidouyu.tv/
      #只要请求来自于www.woshidouyu.tv/qweqwewqe
      #最低级的匹配,只要来自于www.woshidouyu.tv这个域名,都会走到这个location
      location / {
          #这个root参数,也是关键字,定义网页的根目录
          #以nginx安装的目录为相对路径 /opt/nginx112/html
          #可以*修改这个root定义的网页根目录
          root   html;
          #index参数定义网站的首页文件名,默认的文件名
          index index.html index.htm;
      }
      #错误页面的优化(只要是遇到前面4系列的错误,就会直接跳转到相对目录下的40x.html页面)
      error_page   /40x.html;
  }
}

三.配置多虚拟主机与实现

1.修改为的多个虚拟主机的配置文件

#user  nobody;
worker_processes ; #error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info; #pid logs/nginx.pid; events {
worker_connections ;
} 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 ;
keepalive_timeout ; #gzip on; server {
# 访问端口
listen ;
# 访问地址
server_name 192.168.1.209; #charset koi8-r; #access_log logs/host.access.log main; location / {
# 网页存放目录
root /opt/www01/html/;
index index.html index.htm;
} error_page /40x.html;
location = /40x.html {
root /opt/www01/error/;
}
# redirect server error pages to the static page /50x.html
#
error_page /50x.html;
location = /50x.html {
root html;
} }
server{
listen ;
server_name 192.168.1.209;
location / {
root /opt/www02/;
index douban.html douban.htm;
} error_page /50x.html;
location = /50x.html {
root html;
} } }

2.server解析

       server {
# 访问端口,访问的时候如果不加80默认访问80端口
listen ;
# 访问地址,为服务器ip地址
server_name 192.168.1.209; #charset koi8-r; #access_log logs/host.access.log main; location / {
# 网页存放目录,就是访问ip+,可以访问到的页面
root /opt/www01/html/;
# 默认直接访问index.html,此目录下主页为index.html
index index.html index.htm;
}
# 配置错误页面
error_page /40x.html;
location = /40x.html {
root /opt/www01/error/;
}
# redirect server error pages to the static page /50x.html
#
error_page /50x.html;
location = /50x.html {
root html;
} }

其他不改变的情况下,只要多配置几个server的配置

3.服务重启

# 关闭nginx

# systemctl stop nginx

# 开启nginx服务

# systemctl start nginx

# 查看nginx服务

ps aux|grep nginx

4.访问测试

当在3中确认nginx已经启动的时候,在同网段的另外一台电脑进行访问,如果是公网ip,那么久不需要在同网段的电脑访问

用的主页是豆瓣的主页代码

访问80端口

Centos7 nginx配置多虚拟主机过程

访问8080端口

Centos7 nginx配置多虚拟主机过程

访问错误页面用的是天猫的错误页面代码

访问不存在的网页hhhh.html跳到了错误页面成功

Centos7 nginx配置多虚拟主机过程

上一篇:CentOS优化


下一篇:通过ngx-lua来统计Nginx上的虚拟主机性能数据