2 ice  snow ice__snow 于 2016.05.10 16:24 提问

网站部署,Servlet问题 5C

Servlet在本地可以正常使用,但是部署到服务器上不能访问,出现404错误。

本地的开发环境,Windows10+IDEA+tomcat 8
服务器,Linux + nginx + tomcat 7

把发布的文件放在了tomacat->webapps->ROOT文件夹下,除了Servlet之外的都
可以正常访问。

http://ishareilife.com/Hello

这样不能访问Servlet,

http://ishareilife.com:8080/Hello

这样可以访问Servlet




自己解决了,方法如下:

在因为服务器使用了nginx反向代理tomcat,所以出现需要添加8080端口再访问的应该
都是代理问题,也就是nginx的配置有错,现添加如下代码,可以正常代理访问:

 location / {
           proxy_set_header        Host $host;
           proxy_set_header        X-Forwarded-For $remote_addr;
           proxy_pass              http://tomcat_server/;
      }

将需要使用“/”来访问的Servlet代理上就可以了

2个回答

bdmh
bdmh   Ds   Rxr 2016.05.10 16:31

你先确认是否部署正常,先检查服务器默认页面能否访问,比如tomcat的首页

ice__snow
ice__snow 回复ice__snow: http://ishareilife.com/Hello样是404错误,http://ishareilife.com8080/Hello这样可以访问到Servlet
一年多之前 回复
ice__snow
ice__snow 回复无法显示此用户: http://ishareilife.com/Hello样是404错误,http://ishareilife.com8080/Hello这样可以访问到Servlet
一年多之前 回复
rui888
rui888 回复ice__snow: 报什么错误。报404 应该是路径的问题
一年多之前 回复
ice__snow
ice__snow 所以是不是因为在本地和服务器上系统不一样,需要的端口之类的也不太一样呢
一年多之前 回复
ice__snow
ice__snow 还有我把访问的网址从 ishareilife.com/Hello 改为 ishareilife.com:8080/Hello 后好像是访问到了Servlet,但是我的服务器和本地的jdk版本不一样,报错了
一年多之前 回复
ice__snow
ice__snow 可以正常访问到jsp文件,那么部署应该没有问题吧
一年多之前 回复
CSDNXIAON
CSDNXIAON   2016.05.10 16:33

网站部署中遇到的问题
websphere 部署servlet问题
部署网站常见问题
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!