java 如何用域名访问项目

我在hosts设置域名映射后可以自定义域名访问项目,但是出现以下两种情况:1.域名后面必须加上项目名称
才能访问。2、不加项目名,但是项目被加载两次。
请问该如何解决,项目只加载一次,并且域名后面不加项目名

设置下 tomcat 的配置文件 server.xml 的 context 标签

在server.xml中的host元素里面加上

一:购买域名

请移步到相关网站购买域名,我是在腾讯云买的。购买后记得实名认证,不然解析不了。

二:解析域名

大约七八分钟后,测试是否解析成功。

打开cmd,用ping命令连接你的域名,如图:



如上图,说明解析成功了,我的域名已经解析为我的云主机IP了。

三:配置tomcat

用Putty登录云服务器,cd到tomcat文件夹的conf目录,打开server.xml。

vi server.xml
1:修改host为你的域名。有两处需要修改,不要改漏啦!如下:

2:修改端口,tomcat默认是8080端口,把它修改为商用端口80,不然访问不了的~



3:配置docBase。这里特别要注意:path=""  以及  docBase=你的项目在云服务器上的绝对路径



4:注意,这里由域名直接访问首页,要求你在项目的web.xml中把index.jsp配置了作为欢迎页。不然也是不行的。如果部署了之后才发现没有配置,可以cd进入webapps中你的项目文件下的WEB-INF文件夹,打开web.xml文件:

vi web.xml
按I进入编辑模式,添加欢迎页

按Esc退出编辑模式,输入 :wq 保存并退出。

可以使用映射工具,将你的IP映射到这个域名上,这样外网也都能访问。很简单的

不加项目名 就是把项目配置成tomcat 默认访问的项目 ,不会加载两次的吧。不知道你哪个加载两次的原因是什么

https://blog.csdn.net/qq_24879495/article/details/78121693

找到tomcat/conf/server.xml文件,修改里面这一行的appBase为其他路径即可。

 <Host name="localhost"  appBase="/root/webfile/webapps" unpackWARs="true" autoDeploy="true">

其中:

name 是虚拟主机名,对应目录 /conf /Catalina /localhost
unpackWARs 为是否自动解压war文件,如果设置为true,表示把war文件先展开再运行。如果为false则直接运行war文件
autoDeploy,默认为true,表示如果有新的WEB应用放入appBase并且Tomcat在运行的情况下,自动载入应用

修改 C:\Windows\System32\etc\hosts 文件 为localhost指定别名OK

是通过域名访问的啊,要不加我QQ493825354请教一下你