新闻资讯  快讯  焦点  财经  政策  社会
互 联 网   电商  金融  数据  计算  技巧
生活百科  科技  职场  健康  法律  汽车
手机百科  知识  软件  修理  测评  微信
软件技术  应用  系统  图像  视频  经验
硬件技术  知识  技术  测评  选购  维修
网络技术  硬件  软件  设置  安全  技术
程序开发  语言  移动  数据  开源  百科
安全防护  资讯  黑客  木马  病毒  移动
站长技术  搜索  SEO  推广  媒体  移动
财经百科  股票  知识  理财  财务  金融
教育考试  育儿  小学  高考  考研  留学
您当前的位置:首页 > IT百科 > 站长技术 > 服务器

在Nginx服务器中设置多个站点

时间:2020-03-19 11:16:09  来源:  作者:

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

nginx 是一个小巧高效的 web 服务器,由俄罗斯程序员 Igor Sysoev 开发,nginx 虽然体积小,但功能一点也不弱,能和其他的 web 服务器一样支持 virtual hosting,即一个IP对应多个域名?支持多站点访问,就像一个IP对应一个站点一样,所以是”虚拟”的。你想在一个 IP 下面放多少个站点就放多少,只要硬盘够大就行。

这里以配置2个站点(2个域名)为例,n 个站点可以相应增加调整,

假设:

IP地址: 202.55.1.100

域名1 example1.com 放在 /www/example1

域名2 example2.com 放在 /www/example2

配置 nginx virtual hosting 的基本思路和步骤如下:

把2个站点 example1.com, example2.com 放到 nginx 可以访问的目录 /www/

给每个站点分别创建一个 nginx 配置文件 example1.com.conf,example2.com.conf,

并把配置文件放到 /etc/nginx/vhosts/

然后在 /etc/nginx.conf 里面加一句 include 把步骤2创建的配置文件全部包含进来(用 * 号)

重启 nginx

具体过程

下面是具体的配置过程:

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

mkdir /etc/nginx/vhosts

2、在 /etc/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;

}

}

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

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;

}

}

4、打开 /etc/nginix.conf 文件,在相应位置加入 include 把以上2个文件包含进来

user nginx;

worker_processes 1;

# main server error log

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

pid /var/run/nginx.pid;

events {

worker_connections 1024;

}

# main server config

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"';

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



Tags:Nginx   点击:()  评论:()
声明:本站部分内容来自互联网,内容观点仅代表作者本人,如有任何版权侵犯请与我们联系,我们将立即删除。
▌相关评论
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
▌相关推荐
1. 获取服务器证书文件下载好压缩包,找到Nginx文件夹中的证书。2. 安装服务器证书复制 server.key、server.cer 文件到 Nginx 安装目录下的 conf 目录。打开 Nginx 安装目录...【详细内容】
2020-03-19   Nginx  点击:(2)  评论:(0)  加入收藏
当我们有了一个 VPS 主机以后,为了不浪费 VPS 的强大资源(相比共享主机1000多个站点挤在一台机器上),往往有想让 VPS 做点什么的想法,银子不能白花啊:)。放置多个网站或者博客是...【详细内容】
2020-03-19   Nginx  点击:(7)  评论:(0)  加入收藏
VeryNginx 是一个基于openrestry(其实是基于nginx的lua扩展)的开发程序,实现了高级的防火墙,可以做访问统计和其他的一些防护功能。 VeryNginx 扩展了 Nginx 本身的功能,并提供了友好的 Web 交互界面。...【详细内容】
2020-03-19   Nginx  点击:(1)  评论:(0)  加入收藏
tomcat中的证书配置参数如下:<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"maxThreads="150" SSLEnabled="true" scheme="https" secure="t...【详细内容】
2020-03-17   Nginx  点击:(5)  评论:(0)  加入收藏
最近在部署自己的网站(racsky.com)时,使用了Nginx的服务反向代理,并且记录了过程与大家分享,相信这篇文章能够帮助到你。Nginx介绍Nginx是一款轻量级、高性能的反向代理Web服务器...【详细内容】
2020-03-17   Nginx  点击:(1)  评论:(0)  加入收藏
《深入理解Java虚拟机》但要想真的深入理解虚拟机一问肯定远远不够的,但是本文中分三部分对JVM有深入的解析。第1章 走近Java第2章 Java内存区域与内存溢出异常第3章 垃圾收...【详细内容】
2020-03-16   Nginx  点击:(5)  评论:(0)  加入收藏
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。本文从底层原理...【详细内容】
2020-03-15   Nginx  点击:(4)  评论:(0)  加入收藏
1. 需求将生产环境的流量拷贝到预上线环境或测试环境,这样做有很多好处,比如: 可以验证功能是否正常,以及服务的性能; 用真实有效的流量请求去验证,又不用造数据,不影响线上正常访...【详细内容】
2020-03-12   Nginx  点击:(2)  评论:(0)  加入收藏
#日志格式:&#39;$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for"&#39;#统计...【详细内容】
2020-03-11   Nginx  点击:(7)  评论:(0)  加入收藏
运行工作结构原理:Nginx监听127.0.0.1:80和127.0.0.1:443Apache监听127.0.0.2:80和127.0.0.2:443HAProxy侦听公用IP地址的端口80和443。 它将HTTP请求从端口80重定向到端口44...【详细内容】
2020-03-08   Nginx  点击:(2)  评论:(0)  加入收藏
说明php有许多开源项目比较好像,在自己的机器上用docker搭建了很多。每个docker都是跑了个apache,每个docker里面都有apache。这样好像有点浪费资源,而平时都是用nginx,所以研究...【详细内容】
2020-03-06   Nginx  点击:(3)  评论:(0)  加入收藏
现在很多人都喜欢用nginx作为Web服务器部署网站,nginx配置起来也是相当的方便,如果你的网站是PHP语言开发的话,下面我们教大家简单的一招快速的隐藏网页的php后缀名,实现一种Pre...【详细内容】
2020-03-05   Nginx  点击:(14)  评论:(0)  加入收藏
VeryNginx 是一个基于openrestry(其实是基于nginx的lua扩展)的开发程序,实现了高级的防火墙,可以做访问统计和其他的一些防护功能。 VeryNginx 扩展了 Nginx 本身的功能,并提供了...【详细内容】
2020-03-01   Nginx  点击:(17)  评论:(0)  加入收藏
一、背景为了避免别人把未备案的域名解析到自己的服务器ip而导致服务器被断网,需要在nginx上设置禁止通过ip访问服务器,只能通过域名访问。 二、解决方法如果网站只配置了...【详细内容】
2020-03-01   Nginx  点击:(16)  评论:(0)  加入收藏
通过配置 Nginx 配置文件,实现正向代理、反向代理、负载均衡、Nginx 缓存、动静分离和高可用 Nginx 6种功能,并对 Nginx 的原理作进一步的解析。当需要使用 Nginx 配置文件时,...【详细内容】
2020-02-28   Nginx  点击:(8)  评论:(0)  加入收藏
环境准备 1.因为Nginx依赖于gcc的编译环境,所以,需要安装编译环境来使Nginx能够编译起来。命令:yum install gcc-c++显示完毕,表示安装完成:2.Nginx的http模块需要使用pcre来解析...【详细内容】
2020-02-27   Nginx  点击:(0)  评论:(0)  加入收藏
在我们的程序应用中经常会有一些配置文件或者是版本文件需要下载,此时如果把这些下载文件放到程序容器中,在文件太大导致下载时间太长或者大量并发下载时可能会影响程序的正常...【详细内容】
2020-02-25   Nginx  点击:(4)  评论:(0)  加入收藏
购买SSL证书要想使用https访问你的网址,首先得拥有颁发的SSL证书。我使用的是免费版,有效期为一年,过期后再重新申请。 申请SSL证书购买后,可在搜索框输入证书关键字进入到控...【详细内容】
2020-02-24   Nginx  点击:(6)  评论:(0)  加入收藏
此脚本是参考nmgxy/klionsec修改而来,重新添加了一些特征,只用来临时救急,还是推荐到ELK或者Splunk中分析Github:https://github.com/al0ne/nginx_log_check 功能 统计Top...【详细内容】
2020-02-24   Nginx  点击:(8)  评论:(0)  加入收藏
对于nginx的惊群问题,我们首先需要理解的是,在nginx启动过程中,master进程会监听配置文件中指定的各个端口,然后master进程就会调用fork()方法创建各个子进程,根据进程的工作原理...【详细内容】
2020-02-24   Nginx  点击:(8)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条