使用nginx配置二级域名
最近想把三个项目配在一个服务器上,于是想使用nginx配置二级域名实现。
1.域名添加解析
我的是阿里云的域名,所以首先给自己的域名添加解析。
打算使用 www.codeliu.com , test1.codeliu.com, test2.codeliu.com这三个域名,其中 test1.codeliu.com, test2.codeliu.com作为二级域名。
2.准备好三个项目
eclipse新建三个web项目,直接在index.html中写一点东西能进行区别进行,然后export成war包,传到服务器的tomcat webapp目录下。
3.配置nginx
为了方便,我就直接在nginx.conf进行配置了,没有重新起配置文件,如果想重新起配置文件,可以在nginx.conf使用include进行包含就行。
vim /usr/local/nginx/conf/nginx.conf
使用上面的命令编辑nginx的配置文件,先把配置文件中的server注释掉,然后添加下面的语句
server {listen 80;server_name www.codeliu.com;location / {root /usr/lib/apache-tomcat-8.5.33/webapps/CodeliuDemo;index index.html index.htm;}
}server {listen 80;server_name test1.codeliu.com;location / {root /usr/lib/apache-tomcat-8.5.33/webapps/Test1Demo;index index.html index.htm;}
}server {listen 80;server_name test2.codeliu.com;location / {root /usr/lib/apache-tomcat-8.5.33/webapps/Test2Demo;index index.html index.htm;}
}
重启nginx
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload
这样配置就完成了,输入不同的网站就可以显示不同的项目。
4.遇到的问题
在配置完成之后,访问出现了403。
4.1 首先看看是否有index文件
检查后发现都有,应该不是这个原因。
4.2 再检查是否是文件夹的权限问题
chmod -R 777
使用上面的命令后还是不行。
4.3 检查启动用户和nginx工作用户是否一致
修改nginx.conf的第一行,改成下面这样
user root;
重启nginx,访问正常。
2018-11-21 15:21再次更新
试了试发现访问动态项目是404,所以决定一个项目使用一个tomcat,分配不同的端口,这样一个tomcat挂了不会影响其他的项目。
所以解压了三个tomcat,分别对应8080,8081,8082端口。修改tomcat的server.conf达到修改端口的目的。要改三个地方
<!-- 这里我把8005改成8006 -->
<Server port="8005" shutdown="SHUTDOWN"><Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<!-- 这里我把8080改成8081 -->
<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />
<!-- 这里我把8009改成8010 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
重启三个tomcat
修改nginx.conf(上面已经配置过,直接在此基础上修改)
server {listen 80;server_name www.qidaochina.com;location / {proxy_pass http://127.0.0.1:8081;index index.html index.htm;}
}server {listen 80;server_name ccmp.qidaochina.com;location / {proxy_pass http://127.0.0.1:8080;index index.html index.htm;}
}server {listen 80;server_name xwgk.qidaochina.com;location / {proxy_pass http://127.0.0.1:8082;index index.html index.htm;}
}
其实就是把root改成了proxy_pass。这样就能把请求转发到对应的tomcat去处理。
本来想直接把项目名改成ROOT(tomcat的默认显示项目),但发现报错500,于是放弃了这种想法,而是更改ROOT下面的index.jsp.
<%@ page session="false" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /></head><body><script type="text/javascript">window.location.href="../CodeliuDemo/index.html";</script></body>
</html>
这样就ok了。
关注微信公众号:秃头哥编程(ID:xp_1311664842),领取编程大礼包。
使用nginx配置二级域名相关推荐
- nginx 配置二级域名(阿里云)
使用 nginx 配置二级域名,只需要在 nginx.conf 文件中添加如下配置即可 server {listen 80;server_name music.finance.com;location ...
- ruoyi-vue Nginx配置二级域名
一.前言 若依官网项目部署手册,前端部署到80端口一级域名下的.一级域名官网占用,这时就需要配置二级域名. 二.ruoyi-ui 前端vue配置 2.1 配置vue.config.js 修改publi ...
- nginx配置二级域名
我在我的服务器上面跑了两个node应用程序,分别一个端口2368跑的是ghost博客,一个端口8000跑的是我的demo程序.想要一级域名zhangruojun.com用来访问博客,二级域名demo. ...
- Nginx配置二级域名来实现多个站点
1.解析域名 以dinganan.cn为例,进入域名解析管理,解析为:blog.dinganan.cn,如下图: 在cmd命令窗口输入:ping blog.dinganan.cn,回车,若解析成功,如 ...
- 二级域名配置以及nginx解析二级域名到html页面
此文章适合发布前端项目使用,如果想要配置二级域名到后端服务,可以查看这篇文章:nginx配置二级域名 - 简书 在阿里云上配置二级域名,就是添加一条记录就可以了,超级简单,不懂的可以看后面的解释说明, ...
- 利用nginx泛域名解析配置二级域名和多域名
利用nginx泛域名解析配置二级域名和多域名网站的目录结构为 html ├── bbs └── wwwhtml为nginx的安装目录下默认的存放源代码的路径.bbs为论坛程序源代码路径 www为主页程 ...
- 阿里云配置二级域名与nginx代理踩坑
之前一直想配置一个二级域名.过程中踩了一些坑.现记录下来也给自己一个总结. 1 配置二级域名 配置二级域名,也就是我们在主域名下分发一个域名.比如 www.baidu.com ,我们想配置一个www. ...
- NGINX免费配置二级域名及同时开启HTTPS(HTTP强制转HTTPS)nodejs的express后端项目,前端next.js的SSR项目
最近在做web3的创业项目,需要给第三方提供API接口需要配置二级域名:整个过程遇到了一系列问题都一一解决了,记录下整个过程: 二级域名是可以不开启HTTPS的,直接用HTTP也行,开启HTTPS后配 ...
- nginx设置 二级域名 指定端口
我的服务器跑着不同的应用,今天在做微信相关的程序,所以需要配置二级域名wx,配置如下,重启nginx生效. server {listen 80;server_name wx.caowei.wang;l ...
- Nginx实现二级域名店铺
一般B2C或者C2C商城项目都会有二级域名店铺这个需求,本文利用Nginx实现二级域名店铺. 二级域名只访问店铺的首页,商品页依然采用www域名 Nginx配置如下: server {listen 0 ...
最新文章
- python字符串的美化_python字符串格式化
- Monitor Asynchronous Apex
- 海量数据实时在线分析QuickBI
- 从大学生到职场人,一段深刻的思维认知升级补丁
- java好学还是ui好学_java编程和ui设计哪个好学?
- matlab的exec程序,C++调用Matlab画图的一段程序
- Could not create directory F:\Qt\Test\Error in Util.asciify(build-First_02-Desktop_Qt_5_6_3_Min
- 简单的线程同步问题:两个线程交替执行N次【Synchronized、Lock、ArrayBlockingQueue】...
- 翁恺老师C语言学习笔记(八)数组
- vue省市区三级选择的实现
- php mysql 手机归属地_PHP 手机号码归属地查询代码 (API 接口 / mysql)
- 如何去除计算机病毒,怎么清除计算机病毒
- 【Scratch】进阶篇-《Scratch游戏开发》超级躲避球
- 计算机病毒级防范措施总结,计算机病毒及防范措施
- 我,程序员,32岁失业后干啥都赔钱,过去月薪2万的岁月不再重来 你呢?
- 东京奥组委公布奥运志愿者和城市志愿者昵称
- 怎么把vue改写成html,vue将字符串转为为html
- 在屏幕坐标和窗口坐标之见的转换
- (C语言)汉诺塔与受限汉诺塔
- JAVA 定时器的Cron表达式详解