我是靠谱客的博主 忧伤手套,最近开发中收集的这篇文章主要介绍linux nginx多域名,Linux+Nginx+Tomcat 多域名,多应用在同一服务器的配置,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Linux+Nginx+Tomcat 多域名,多应用在同一服务器的整合配置

实现的效果和达到的目的为:

1、有两个域名www.aaa.com www.bbb.com 分别对应两个两个不同的网站,但是公用同一个Nginx和Tomcat服务器;

2、所有的JSP等动态内容转发到Tomcat处理,js、图片等直接由Nginx负责处理;

3、上传的图片不在应用的根目录下面,需要另外指定转发(Nginx Alias 虚拟目录)

以下为示例配置文件:

Tomcat配置:server.xml

www.aaa.com

unpackWARs="true" autoDeploy="true">

…. ….

#指定虚拟主机 ww.bbb.com

unpackWARs="true" autoDeploy="true">

… ….

Nginx配置:

编辑Nginx安装目录下conf文件夹中的nginx.conf

server {

listen       80;

server_name www.aaa.com aaa.com;

root/data/www/aaa; #设定网站的资源存放路径

indexindex.html index.htm index.jsp;

#charset utf-8;

access_log  /var/log/nginx/aaa.access.log  main;

location / {

index index.html index.htm index.jsp;

root /data/www/aaa;

proxy_set_header Host

www.aaa.com; #此参数重要指向tomcatserver.xml中配置的Host

name,以转发给不同的Host处理.

proxy_pass http://127.0.0.1:8080;

}

location ~ /Image/ {  #我这里尝试多次只有这种(加“~”)才奏效,关于Nginx虚拟目录其他方式参加后面的参考链接介绍

root /data/www/;

}

#location ~ .*.jsp$ { #所有jsp的页面均交由tomcat处理

#     index index.jsp;

#     proxy_pass http://127.0.0.1:8080; #转向tomcat处理

# }

location~ .*.(gif|jpg|jpeg|png|bmp|swf)$  #设定访问静态文件直接读取不经过tomcat

{

expires      30d;

}

location ~ .*.(js|css)?$

{

expires      1h;

}

…….

…….

}

server {

listen       80;

server_name  www.bbb.com;

root/data/www/bbb; #设定网站的资源存放路径

indexindex.html index.htm index.jsp;

#charset utf-8;

access_log  /var/log/nginx/bbb.access.log  main;

location / {

index index.html index.htm index.jsp;

root /data/www/bbb;

proxy_set_header Host www.bbb.com;

proxy_pass http://127.0.0.1:8080;

}

#location ~ .*.jsp$ { #所有jsp的页面均交由tomcat处理

#     index index.jsp;

#     proxy_pass http://127.0.0.1:8080; #转向tomcat处理

# }

location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$  #设定访问静态文件直接读取不经过tomcat

{

expires      30d;

}

location ~ .*.(js|css)?$

{

expires      1h;

}

… ….

参考文章:http://m.blog.csdn.net/blog/oyxm0/20455153

http://blog.csdn.net/kobejayandy/article/details/20867351

【三种Nginx 虚拟目录使用方式,本人验证的结果只有(只有这种(加“~”)才奏效,其他两种方式验证无果)】

Nginx中有

1

location

/Image{

2

alias

/data/Image;

3

index

index.html index.htm ;

4

}

这种配置下http://localhost/Image 指定的是/data/Image

1

location

/Image  {

2

root

/data/;

3

index

index.html index.htm ;

4

}

这种配置下,访问http://localhost/Image时,Nginx会去找/data目录下的Image文件夹

Nginx也有与Apache类型的

1

location

~ /Image{

2

root

/data/;

3

index

index.html index.htm;

4

}

【以下为一篇Nginx虚拟目录的介绍】

原文出处:http://down.chinaz.com/server/201111/1382_1.htm

Nginx设置alias实现虚拟目录 alias与root的用法区别

Nginx 貌似没有虚拟目录的说法,因为它本来就是完完全全根据目录来设计并工作的。如果非要给nginx安上一个虚拟目录的说法,那就只有alias标签比较"像",干脆来说说alias标签和root标签的区别吧。最基本的区别:alias指定的目录是准确的,root是指定目录的上级目录,并且该上级目录要含有location指定名称的同名目录。另外,根据前文所述,使用alias标签的目录块中不能使用rewrite的break。

说不明白,看下配置:

location /abc/ {

alias /home/html/abc/;

}

在这段配置下,http://test/abc/a.html就指定的是/home/html/abc/a.html。这段配置亦可改成

location /abc/ {

root /home/html/;

}

这样,nginx就会去找/home/html/目录下的abc目录了,得到的结果是相同的。但是,如果我把alias的配置改成:

location /abc/ {

alias /home/html/def/;

}

那么nginx将会从/home/html/def/取数据,这段配置还不能直接使用root配置,如果非要配置,只有在/home/html/下建立一个 def->abc的软link(快捷方式)了。一般情况下,在location /中配置root,在location /other中配置alias是一个好习惯。至于alias和root的区别,我估计还没有说完全,如果在配置时发现奇异问题,不妨把这两者换换试试。

nginx alias的设置

nginx也有像apache的别名功能,格式为:

location ~ /alias {

root /home/www/default;

index index.php;

}

但nginx在处理php脚本时,需要传递给fastcgi才能处理,所以比apache的别名设置多一个,下面我们以phpmyadmin别名设置为例:

location ~ ^/phpmyadmin.+.php$ {

root /home/www/default;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

location ~ /phpmyadmin {

root /home/www/default;

index index.php;

}

另一篇:nginx虚拟目录(alias与root的区别) http://www.2cto.com/os/201202/119658.html

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文:http://blog.csdn.net/spokeninchina/article/details/46778789

最后

以上就是忧伤手套为你收集整理的linux nginx多域名,Linux+Nginx+Tomcat 多域名,多应用在同一服务器的配置的全部内容,希望文章能够帮你解决linux nginx多域名,Linux+Nginx+Tomcat 多域名,多应用在同一服务器的配置所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部