Nginx反向代理Tomcat,并配置301跳转,去掉www

我们的域名在做解析时经常会解析2个域名,即带www的和不带www的。

这样做的目的是,当用户使用不带www的域名时,也可以正常访问你的网站。但是这样做的后果是,你站点主域名的pr值分散到其他几个URL上了。因为在搜索引擎看来,带www和不带www的URL是2个完全不同的URL,当它们指向同一个网站时,会让搜索引擎不懂应该选择哪一个URL作为主要的域名。

如果你用301重定向把其他几个URL如baidu.com转到www.baidu.com时,相应的PR也就集中在主域名:www.baidu.com上了。

 

这里,前段时间独立开发的 SpringBoot 项目,部署到服务器。

用的是内部 Tomcat,设置端口 80,解析域名后,可以正常访问。我个人希望是输入 http://codergroup.cn 能访问,http://www.codergroup.cn 重定向到 http://codergroup.cn;内部链接也是如此,输入 http://www,codergroup.cn/articles/10006 能跳到 http://codergroup.cn/articles/10006。

 

具体步骤如下

1、在 SpringBoot 项目里设置端口为 8080 (这是内置 Tomcat 服务器端口)

2、如果用的是外置 Tomcat,默认就是8080

3、安装 Nginx

4、修改 Nginx 的配置文件

  1. #配置一个代理即tomcat1服务器
  2. upstream tomcat_server1 {
  3.     server localhost:8080;
  4. }
  5. #配置永久跳转
  6. server {
  7.     listen 80;
  8.     server_name codergroup.cn,www.codergroup.cn;
  9.     if  ( $host != 'codergroup.cn'  )  {
  10.         rewrite ^/(.*)$ http://codergroup.cn/$1 permanent;
  11.     }
  12.     location / {
  13.             #域名codergroup.cn的请求全部转发到tomcat_server1即tomcat1服务上
  14.             proxy_pass http://tomcat_server1;  
  15.             #欢迎页面,按照从左到右的顺序查找页面
  16.             index index.jsp index.html index.htm;
  17.     }
  18. }

保存,重载配置

 

  • 微信
  • 交流学习,有偿服务
  • weinxin
  • 博客/Java交流群
  • 资源分享,问题解决,技术交流。群号:590480292
  • weinxin
言曌

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: