• 1
  • 2
  • 3
  • 4
  • 5
阿里云主机ECS 首 页  »  帮助中心  »  云服务器  »  阿里云主机ECS
nginx一台服务器配置多个站点的配置方法
发布日期:2016-1-11 21:1:15

  使用ECS产品,可在单台主机上面搭建多个站点,nginx服务提供了配置基于ip、端口、域名的虚拟主机功能,只要把域名绑定不同的location,然后在指定的路径下上传各个网站的程序就可以了。

  简单介绍一下基于域名的虚拟主机的配置方法:

  1、比如我想建立两个站点的域名分别是www.A.com 和 www.B.com,将这两个域名都解析到自己的服务器ip。

  2、在nginx的配置文件conf目录下创建一个专门存放虚拟主机配置的目录,命名为vhosts_conf,可把虚拟目录的配置全部放在这里,在里面创建名为vhosts_A.conf和vhosts_B.conf文件并打开,在里面写下相关的配置文件。

  配置文件参考:

  server {

  listen 80;                #监听的端口号

  server_name A.com;         #域名

  #access_log logs/host.access.log main;

  location / {

  root X:/wnmp/www/A;     #站点的路径

  index default.php index.php index.html index.htm;

  #站点的rewrite在这里写

  rewrite ^/(\w+)\.html$ /$1.php;

  rewrite ^/(\w+)/(\w+)$ /$1/$2.php;

  }

  #错误页的配置

  error_page 404 /error.html;

  error_page 500 502 503 504 /50x.html;

  location = /50x.html {

  root html;

  }

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

  location ~ \.php$ {

  root X:/wnmp/www/A;

  fastcgi_pass 127.0.0.1:9000;

  fastcgi_index index.php;

  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

  include fastcgi_params;

  }

  location ~ /\.ht {

  deny all;

  }

  }

  3、在nginx的主配置文件里,设置包含这两个站点的配置文件。

  打开nginx.conf文件,在http{...}段输入

  #包含所有的虚拟主机的配置文件 (填写服务器中vhosts_conf/*.conf所在绝对路径)

  include X:/nginx/conf/vhosts_conf/*.conf;

  4、在指定的路径下上传每个站点的数据

  5、重启nginx,测试是不是访问正常