tomcat+Nginx多站点配置

今天学习使用nginx进行多站点配置,将步骤进行简单的记录,方便以后查询使用。本文涉及到多域名配置以及一个域名映射多个端口的情况。

一、tomcat 多端口映射配置:

1、tomcat文件夹中创建两个webapps:

首先在tomcat目录下创建多个webapps文件夹,分别叫webapps1、webapp2,之前的webapps 没做任何修改。

htgl 项目放到webapps1文件夹下,ytdz项目放到webapp2文件夹下。

2、修改tomcat conf 文件夹中的 server.xml的配置

在server.xml文件中加入下面一段配置


   
	 
    
      
        
      
       
        
      
    
  

 

	 
    
      
        
      
       
        
      
    
  

 

3、可以创建文件夹存放项目的快捷指向链接(我的项目配置了链接文件夹)

在与tomcat齐名的目录下创建 www 文件夹 里面存放两个项目的链接文件夹,分别指向tomcat中 htgl和ytdz目录, 方便nginx vhosts文件夹下conf文件中 root 的 配置。

 

二、nginx 配置如下:

首先在nginx的conf目录下创建vhosts文件,在文件夹中创建glxt.conf、htgl.conf 、ytdz.conf三个文件

1、glxt.conf文件配置如下:

server {

listen 80;

server_name glxt.com www.glxt.com; #是花钱申请的一级域名(这里使用的假的地址)

charset utf-8;

root /ytgs/glxt.com ; #这里的路径是静态网站的存放路径

index index.html index.htm;

access_log off;

}

该文件存放的公司的网站,当时是从电脑上下载的静态网页,配置比较简单 。

 

2、htgl.conf 文件配置如下:

server {

listen 80 default;

server_name htgl.cn www.htgl.cn; #是花钱申请的一级域名(这里使用的假的地址)

index login;

root /test/www/htgl; # 创建的快捷链接文件夹,指向tomcat webapps中 htgl项目。

location = /images/kaptcha.jpg { #项目中使用验证码图片地址也需要映射一下

proxy_pass http://127.0.0.1:8081/images/kaptcha.jpg; #8081对应的 htgl项目的端口号

}

location / {

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_pass http://127.0.0.1:8081;

}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {

expires 30d;

access_log off;

}

location ~ ^/(images|javascript|js|css|flash|media|static)/ {

expires 30d;

access_log off;

}

access_log /test/log/nginx/access/htgl.log;

}

3、ytdz.conf 文件配置如下:(ytdz 与 glxt使用一个域名,不同端口进行监听访问)

server {

listen 89; #与glxt 不同端口的配置部分

server_name glxt.com www.glxt.com;

index login;

root /test/www/ytdz; # 创建的快捷链接文件夹,指向tomcat webapps中 ytdz项目。

location = /images/kaptcha.jpg {

proxy_pass http://127.0.0.1:8084/images/kaptcha.jpg;

}

location / {

proxy_set_header Host $host:89; #这里如果不加89 项目登录后,登录到原来80端口映射的网址

proxy_set_header X-Real-IP $remote_addr:89; #这里如果不加89 项目登录后,登录到原来80端口映射的网址

proxy_pass http://127.0.0.1:8084; #8084对应的 ytdz项目的端口号

}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {

expires 30d;

access_log off;

}

location ~ ^/(images|javascript|js|css|flash|media|static)/ {

expires 30d;

access_log off;

}

 

access_log /test/log/nginx/access/ytdz.log;

}

 

最后:配置完conf文件后,需要在nginx的conf文件夹下的nginx.conf进行修改,在最后面加一句:

include /test/server/nginx/conf/vhosts/*.conf;

 

配置完毕后重启tomcat,然后重启nginx。

 

一级目录的项目直接访问一级目录,ytdz项目需要访问 glxt.com:89

 

 

 

 

你可能感兴趣的:(tomcat,nginx,工作随笔)