nginx 绑定域名(centos linux)

来源:互联网 发布:mac pro使用教程 编辑:程序博客网 时间:2024/06/06 12:23

 

绑定域名:
/alidata/server/nginx-1.4.7/conf/vhosts
新建一个和域名同名的.conf文件 ,比如 aa.bb.com.conf
这个网站内容放在/alidata/www/aa.bb.com文件夹下面
添加内容:
server {
    listen       80;
    server_name aa.bb.com;
 index index.html index.htm index.php;
 root /alidata/www/aa.bb.com;
 location ~ .*\.(php|php5)?$
 {
  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;
 }
 access_log  /alidata/log/nginx/access/default.log;
}

 

重启Nginx

 

=======================================

网上参考:

那么我们开始吧:
1、为我们的站点创建配置文件
  我是这么做的,在nginx的配置文件conf目录下创建一个专门存放VirtualHost的目录,命名为vhosts_conf,可以把虚拟目录的配置全部放在这里。在里面创建名为vhosts_modoupi_websuitA.conf的配置文件并打开,我们在这里做配置,往里面写:

复制代码 代码如下:

server {
listen 80;               #监听的端口号
server_name websuitA.com;        #域名
#access_log logs/host.access.log main;
location / {
root X:/wnmp/www/websuitA;    #站点的路径
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/websuitA;
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;
}
}


这样就做好了,站点A的配置,同样的方法,做websuitB的配置,这里我命名为vhosts_modoupi_websuitB.conf,直接上代码

复制代码 代码如下:

server {
     listen 80;               #监听的端口号
     server_name websuitB.com;        #域名
     #access_log logs/host.access.log main;
     location / {
        root X:/wnmp/www/websuitB;    #站点的路径
       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/websuitB;
        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;
     }
}


这样,两个站点的配置就OK了。
2、在nginx的主配置文件里,包含这两个站点的配置文件。
  我们打开conf目录下的nginx.conf文件,很容易做,只要在http{...}段输入以下代码:

复制代码 代码如下:

#包含所有的虚拟主机的配置文件
include X:/wnmp/nginx/conf/vhosts_conf/*.conf;


这样,nginx的多站点配置就做好了,怎么样打开浏览器测试一下吧~

第二种方法:
当我们有了一个 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 目录
1
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
第三种方法:
一个服务器上需要跑多个网站,如果仅仅把域名解析到server的IP是不行的,访问不同域名打开的都是nginx默认的网站。要想分别对应,需要在nginx里设置vhost。

我是用lnmp一键安装包(http://www.lnmp.org/ )安装的nginx+mysql+php环境,对于其他自己编译的nginx估计配置文件和安装目录会有所不同,自己酌情修改哦,呵呵
编辑/usr/local/nginx/conf/nginx.conf,去掉server的参数。

复制代码 代码如下:

server
{
listen 80;
server_name www.wifizoo.net;
index index.html index.htm index.php;
root /tmp/wwwroot; 本文来自
location ~ .*\.(php|php5)?$
{
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
} copyright
location /status {
stub_status on;
access_log off;
}
copyright
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}

location ~ .*\.(js|css)?$
{
expires 12h;
}

log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
access_log /home/wwwroot/logs/access.log access;
}


然后加入vhost定义: copyright
include /usr/local/nginx/vhost/*.conf;
}
再在/usr/local/nginx/建立vhost文件夹,里面创建各域名的对应配置文件。
这个简单,就把之前的server配置内容复制到创建的对应conf文件里就OK了。

复制代码 代码如下:

server
{
listen 80;
server_name www.jb51.net;
server_name jb51.net;
index index.html index.htm index.php;
root /tmp/wwwroot/meituge;

location ~ .*\.(php|php5)?$
{
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
} copyright
location /status {
stub_status on;
access_log off;
}
copyright

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
copyright

location ~ .*\.(js|css)?$
{
expires 12h;
}
#log_format access '$remote_addr - $remote_user [$time_local] "$request" '
#'$status $body_bytes_sent "$http_referer" '
#'"$http_user_agent" $http_x_forwarded_for';
#access_log /home/wwwroot/logs/access.log access;
}


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 飞利浦剃须刀维修点 电动剃须刀能带上飞机吗 往复式剃须刀哪个牌子好 飞机可以带剃须刀吗 飞利浦剃须刀充电指示灯说明 米家剃须刀无法充电解决方法 手动剃须刀会越刮越粗么 超人剃须刀和飞科哪个好 飞利浦剃须刀充电指示灯 剃须刀哪个牌子的好 什么牌子的剃须刀好 什么牌子的剃须刀好用 什么样的剃须刀好用 飞利浦剃须刀价格表 男士剃须刀什么牌子好 飞利浦剃须刀哪个型号好 飞利浦剃须刀配件网上商城 飞利浦电动剃须刀价格 飞利浦剃须刀旗舰店 飞利浦哪款剃须刀好用 剃须刀手动好还是电动好 电动和手动剃须刀哪个好 手动和电动剃须刀哪个好 手动剃须刀好还是电动的好 手动剃须刀哪个牌子的好 电动剃须刀怎么清洗 剃须刀电动的好还是手动的好 日本剃须刀哪个牌子好 飞科剃须刀价格图片 飞利浦剃须刀刀头价格 飞科电动剃须刀价格 飞利浦哪款剃须刀性价比高 博朗和松下剃须刀哪个好 男人用什么剃须刀好 什么剃须刀好用又便宜 剃须刀哪个牌子好用 飞科fs711 飞科电动刮胡刀 飞利浦电须刀 刮胡刀电动的好还是手动的好 手动刮胡刀好还是电动的好