详解阿里云nginx服务器多站点的配置

阿里云nginx服务器多站点的配置

今天配置了一下多站点,记录一下配置的过程...

1、首先要找到nginx 配置文件之所在,阿里云上的nginx.conf 文件上 /alidata/server/nginx-1.4.4/conf 中。

2、然后在conf目录下创建一个vhosts 目录,  这个目录是用来存放不同站点的配置文件的。

3、然后呢, 在nginx.conf 最后 加入一行 include /alidata/server/nginx/conf/vhosts/*.conf;

user www www;
worker_processes 1; 

error_log /alidata/log/nginx/error.log crit;
pid    /alidata/server/nginx/logs/nginx.pid; 

#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 65535; 

events
{
 use epoll;
 worker_connections 65535;
} 

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

  #charset gb2312; 

  server_names_hash_bucket_size 128;
  client_header_buffer_size 32k;
  large_client_header_buffers 4 32k;
  client_max_body_size 8m; 

  sendfile on;
  tcp_nopush   on; 

  keepalive_timeout 60; 

  tcp_nodelay on; 

  fastcgi_connect_timeout 300;
  fastcgi_send_timeout 300;
  fastcgi_read_timeout 300;
  fastcgi_buffer_size 64k;
  fastcgi_buffers 4 64k;
  fastcgi_busy_buffers_size 128k;
  fastcgi_temp_file_write_size 128k; 

  gzip on;
  gzip_min_length 1k;
  gzip_buffers   4 16k;
  gzip_http_version 1.0;
  gzip_comp_level 2;
  gzip_types    text/plain application/x-javascript text/css application/xml;
  gzip_vary on;
  #limit_zone crawler $binary_remote_addr 10m;
  log_format '$remote_addr - $remote_user [$time_local] "$request" '
         '$status $body_bytes_sent "$http_referer" '
         '"$http_user_agent" "$http_x_forwarded_for"'; 

  # 加入下面一行 表示将 vhosts 下面所有的 conf 文件包含进来
  include /alidata/server/nginx/conf/vhosts/*.conf;
}

4、然后,就是在vhosts 目录下写 你对应站点的 conf 文件了。下面给出一个范例

server {
  listen    80;
  # 这个表示 网站域名, 可以是二级甚至多级域名
  server_name localhost demo.com www.demo.com test.demo.com; 

  # 表示默认索引文件
  index index.html index.htm index.php; 

  # 该站点对应的网站根目录所在
  root /alidata/www/demo; 

  location ~ .*\.(php|php5)?$
  {
    #fastcgi_pass unix:/tmp/php-cgi.sock;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    include fastcgi.conf;
  }
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
  {
    expires 30d;
  }
  location ~ .*\.(js|css)?$
  {
    expires 1h;
  } 

  # 伪静态规则
  include /alidata/server/nginx/conf/rewrite/phpwind.conf;
  access_log /alidata/log/nginx/access/phpwind.log;
}

5、如果还要继续添加, 直接复制文件。然后修改一下 server_name, root, 和access_log(如果有必要的话) 就OK了。

6、然后,不要立马重启nginx,应该要先测试一下nginx 配置文件是否正常. 找到nginx 的 sbin目录。 注意, 这个地方是nginx 的sbin 目录(这个目录与nginx 的conf 目录是同级目录)。linux 下有许多与sbin同名的目录。 容易搞错。 在阿里云服务器上一般默认的目录是 /alidata/server/nginx-1.4.4/sbin。

7、输入 cd /alidata/server/nginx-1.4.4/sbin,然后输入  ./nginx -t ,如果控制台显示下面两行,则表示配置成功了,否则请根据提示继续检查配置文件。

nginx: the configuration file /alidata/server/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /alidata/server/nginx/conf/nginx.conf test is successful

8、配置成功之后, 就 需要重启 nginx 服务器。 在sbin目录下输入命令:./nginx -s reload, 然后整个过程就完成了。

另外, 总结一下nginx 的几个常用命令:

启动

./nginx 

重启

./nginx -s reload 

关闭

ps -ef | grep nginx   # 查询nginx主进程号 

从容停止   kill -QUIT 主进程号

快速停止   kill -TERM 主进程号

强制停止   kill -9 nginx

若nginx.conf配置了pid文件路径,如果没有,则在logs目录下

kill -信号类型 '/usr/local/nginx/logs/nginx.pid'

判断配置文件是否正确

./nginx -t

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 详解Nginx配置多站点需要踩的坑

    从Windows下的Apache转移到Linux下的Nginx,发现有很多坑需要踩. 以下就做个简单的记录,方便后来者爬坑. 配置Nginx,一般会遇到以下几个坑: 配置nginx支持pathinfo模式 - 优化URL,隐藏index.php - 同一服务器配置多站点 配置pathinfo模式 在server(也就是你的站点,一个server对应一个站点)中输入以下内容: location ~ ^(.+\.php)(.*)$ { root html/[站点目录]; #配置站点目录路径 fast

  • nginx 负载均衡 多站点共享Session

    多站点共享Session常见的作法有: •使用.net自动的状态服务(Asp.net State Service); •使用.net的Session数据库: •使用Memcached. •使用Cookie方式实现多个站点间的共享(这种方式只限于几个站点都在同一域名的情况下): 这里我们就 演练一下 以数据库的形来存储Session,来实现多站点共享Session. 首先我们 建好一下站点,如下图: Default.aspx 其中 有二个Button  ,SetSession 主要是用于给一个 S

  • Nginx 的多站点配置方案

    当我们有了一个 VPS 主机以后,为了不浪费 VPS 的强大资源(相比共享主机1000多个站点挤在一台机器上),往往有想让 VPS 做点什么的想法,银子不能白花啊:).放置多个网站或者博客是个不错的想法,可是如何配置 web 服务器才能在一个 VPS 上放置多个网站/博客呢?如何通过一个 IP 访问多个站点/域名呢?这就是大多数 web 服务器支持的 virtual hosting 功能.这里将描述如何一步一步如何用 nginx 配置 virtual hosting. nginx 是一个小巧高效

  • Nginx 多站点配置实例详解

    Nginx 多站点配置实例详解 在一台 VPS 上,我们有时候需要同时跑几个 virtualenv.比如 virtualenv app1 跑的是 Django 的一个应用,而 virtualenv app2 跑的是 Tornado.那么如何配置 Nginx,让它同时支持这两个 virtualenv 的运行呢? 首先是 Nginx 的主配置,位于 etc/nginx/ngnix.conf,让它保持默认就行: user nginx; worker_processes 1; error_log /va

  • nginx 多站点配置方法集合

    那么我们开始吧: 1.为我们的站点创建配置文件 我是这么做的,在nginx的配置文件conf目录下创建一个专门存放VirtualHost的目录,命名为vhosts_conf,可以把虚拟目录的配置全部放在这里.在里面创建名为vhosts_modoupi_websuitA.conf的配置文件并打开,我们在这里做配置,往里面写: 复制代码 代码如下: server { listen 80; #监听的端口号 server_name websuitA.com; #域名 #access_log logs/h

  • Nginx一个IP如何配置多个站点的方法教程

    前言 对于Nginx,一个IP上配置多个站点还是很常见的.尤其是在开发环境上,更是如此. 下面在我的阿里云上简单的实现这样一个需求: 在一个IP上通过对端口区分来配置多个站点. 环境初始化目录一览配置站点准备添加配置文件疑难杂项fastcgi_passNginxphp-fpm的进程间通信有两种方式总结 环境 手头上正好有一台阿里云学生机,趁着没过期,就拿来用吧. 操作系统:centOS7 php-fpm Nginx 初始化 在centos上搭建php-fpm+nginx环境不是很难,网上有很多的

  • 详解阿里云nginx服务器多站点的配置

    阿里云nginx服务器多站点的配置 今天配置了一下多站点,记录一下配置的过程... 1.首先要找到nginx 配置文件之所在,阿里云上的nginx.conf 文件上 /alidata/server/nginx-1.4.4/conf 中. 2.然后在conf目录下创建一个vhosts 目录,  这个目录是用来存放不同站点的配置文件的. 3.然后呢, 在nginx.conf 最后 加入一行 include /alidata/server/nginx/conf/vhosts/*.conf; user

  • 详解阿里云服务器添加安全组规则(图文教程)

    阿里云安全组概述 阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程 在购买阿里云ECS服务器的时候,阿里云会要求客户设置安全组,如果不设置,阿里云会指定默认的安全组.那么,这个安全组是什么呢?顾名思义,就是为了服务器安全设置的.安全组其实就是一个虚拟的防火墙,可以让用户从端口.IP的维度来筛选对应服务器的访问者,从而形成一个云上的安全域. 很多朋友购买了阿里云服务器,安装了某些服务后发现死活连不上,也没有任何报错,最终发现原来是安全组的锅.如果你也有类似情况,不妨检查下安全

  • 详解阿里云LINUX服务器配置HTTPS(NGINX)

    背景说明 服务器为阿里云 ECS,操作系统为 CentOS 6.5. 部署配置说明 第一步,安装nginx 之所以要先安装 nginx,是因为下面配置域名解析的时候可以直接在浏览器看到效果,当然了,先配置域名,然后 ping 一下也是可以的 下载Nginx源码包,解压源码包,进入解压后的目录,编译配置,命令如下: ./configure --prefix=/usr/local/nginx --with-http_ssl_module 以上命令将nginx安装到usr/local/nginx目录下

  • 详解阿里云CentOS Linux服务器上用postfix搭建邮件服务器

    注:本文的邮件服务器只用于发送邮件,也就是STMP服务器. 一.准备工作 1. 为邮件服务器添加DNS解析 虽然不加DNS解析也能把邮件发出去,但会被大多数邮件服务器当作垃圾邮件.根据我们的实际经验,需要添加三条DNS解析记录:A记录.MX记录.TXT记录.比如域名cnblogs.info,对应的DNS记录如下: 2. 准备存放邮件的硬盘空间 如果用的是阿里云入门级Linux服务器,有一块20G的数据盘未挂载,需要格式化并挂载(假设这里挂载的目录是/data). 二.配置postfix post

  • 详解阿里云Linux启动tomcat并能外网访问

    问题描述: 先描述一下我的心路历程吧,新买了阿里云服务器,由于需求不是很大,只是为了备案,所以买了个最低配的,而且是Windows server2012的.那现在需要做的是在这个乞丐版的server上,第一个比较恶心的问题,阿里云能卖个Windows server的,却安装不上一个IIS,真是醉了.一安装就提示存储空间不足.那好不用windows了,我换成Linux,但是这个Linux我选择的系统是CentOS 6.5 64位,这个是之前买的直接能用的,就是什么都不用修改的,直接的默认页面是能通

  • 详解阿里云maven镜像库配置(gradle,maven)

    经常使用maven远程仓库里jar包的同学,最头疼的事情莫过于加了jar包依赖配置之后,需要漫长的下jar包的过程,因为maven仓库网站是国外网站,速度非常的慢.在国内下好jar包放到本地再加载又过于麻烦. 以前有个oschina的国内maven镜像仓库地址,现在应该是弃用了(害得我也等了半天)现在国内的话主要使用阿里云的maven镜像仓库,速度很快~~~ gradle配置:将原来的mavenCentral()直接替换掉或者放到这个的前面(默认是从上往下寻找,所以要放到mavenCentral

  • 详解阿里云视频直播PHP-SDK接入教程

    阿里云 视频直播 配置 及 PHP-SDK 接入教程 个人感觉,阿里的文档比微信的要坑很多- 微信最多是有些比较重要的东西放到比较不起眼.比较难发现的地方. 阿里的文档就是要么就是sdk已经更新了,但是文档还没更新,导致文档与SDK不匹配.在关键点卡我一下- 要么是同样的功能有好几个版本的SDK以及文档,却不告诉你哪个是最新的- 吐槽结束~ 准备工作 1.最重要的,先仔细看下视频直播文档! 2. 购买阿里云的视频直播服务 ,用量不大的时候建议使用按量收费的方式结算,接通之后消耗了流量才扣钱: 3

  • 阿里云centos7服务器搭建nginx  web服务经验示例

    (1)购买完centos7服务器后,一定要进入阿里云的管理控制台的安全组规则,入方向,添加安全组规则,开放80端口,授权对象填写0.0.0.0/0授权所有ipv4地址.切记,我就是没搞这个,然后各种搞防火墙开80端口,然后浏览器一直还是无法访问. (2)下载安装Nginx: 下载: wget -c https://nginx.org/download/nginx-1.10.1.tar.gz 安装nginx的依赖库: 安装gcc(一般都自带,不需要再安装): yum install gcc-c++

  • 解析阿里云centos7服务器nginx配置及常见问题解答

    前言: 本文参考了jackyzm的博客:https://www.cnblogs.com/jackyzm/p/9600738.html,进行了内容的更新,并请注意这里适用的版本是centos7的版本.并且本文的配置方式曾经在版本8上失败过,因此查看本文前最好先确定服务器的版本. 而关于nginx部分问题的处理,则是参考了文章:http://www.mamicode.com/info-detail-3008792.html进行,其中包括的部分错误如下: 1.make[1]: *** [objs/Ma

  • 详解nginx服务器中的安全配置

    本篇文章详细的讲诉了nginx服务器中的安全配置,具体如下: 一.关闭SELinux 安全增强型Linux(SELinux)的是一个Linux内核的功能,它提供支持访问控制的安全政策保护机制. 但是,SELinux带来的附加安全性和使用复杂性上不成比例,性价比不高 sed -i /SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config /usr/sbin/sestatus -v #查看状态 二.通过分区挂载允许最少特权 服务器上 nginx

随机推荐