我是tomcat和servlets的新手。所以我试图在我的tomcat 8容器上测试一个简单的jsp
页面。当我从index.jsp
或localhost
打开127.0.0.1
文件时,它工作正常,index.jsp
页面显示html
并输出jsp
代码结果。但是当我通过pc的 ip地址(本地网络上的192.168.1.100)运行它时,浏览器会显示html
,但jsp
代码完全被忽略。这是index.jsp
的一部分:
</head><body>
<%
out.print("<h2>Hello, I'm running!!</h2>");
%>
<header><h1>The Real Thing</h1><h4>Vote or die!</h4></header>
<main>
我甚至更改了tomcat web.xml的welcome-list
,将index.jsp
放在index.html
之前,但它无效。因此,如果localhost正在运行来自jsp
的{{1}}代码,那么为什么本地网络IP地址没有运行index.jsp
代码?
任何帮助都将不胜感激。
注意:我从
jsp
删除了index.jsp,但/var/lib/tomcat8/webapps/ROOT/
仍在显示网页,而192.168.1.100
却没有找到404页面。
答案 0 :(得分:0)
您需要对server.xml进行两次更改
添加一个新的Host
元素,其中name
属性指向您的计算机/服务器的DNS名称。如果服务器没有向DNS注册名称,您可以使用本地名称解析程序(在安装它的/etc/hosts
文件中,Windows中有类似的文件)来添加您选择的主机名和映射它被分配给服务器的网络接口。
然后,您需要更改名为defaultHost
的{{1}}元素上的Engine
属性,指向刚添加的主机