spring - 将tomcat重定向到本地系统中的apache

标签 spring apache spring-mvc tomcat xampp

我正在 apache tomcat 上运行一个 spring MVC 项目,端口为 http://localhost:8080/project_name/

我的依赖项在 80 端口上运行的 apache 系统中,对于这种情况,我需要将此 URL 运行为 http://localhost:80/project_name/

我正在为 apache 使用 XAMPP

Note: Tomcat should run on 8080 port only

我已经尝试在 httpd.conf 文件中添加 VirtualHost

<VirtualHost *:80/project_name/> 
  ProxyPreserveHost On
  ProxyRequests Off
  ServerName http://localhost/
  ServerAlias http://localhost/
  ProxyPass / http://localhost:8080/project_name/
  ProxyPassReverse / http://localhost:8080/project_name/
</VirtualHost> 

但它重定向为 http://localhost/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/project_name/

并显示如下错误enter image description here

有人可以帮忙吗?

任何解决方案都是值得赞赏的

谢谢

最佳答案

我试过了

<VirtualHost *:80>
  ServerName localhost
  ProxyPass / http://localhost:8080/
</VirtualHost>

这工作正常我可以访问 http://localhost:8080/project_name 作为 http://localhost/project_name 但我无法访问资源(例如:http://localhost/resources/images/header-logo-mini.jpg) 通过 apache 服务器

最后,我通过阅读这个 documentation 得到了解决方案

我的解决方案是

<VirtualHost *:80>
  ServerName localhost
  ProxyPass /project_name/ http://localhost:8080/project_name/
</VirtualHost>

感谢@Nic3500

谢谢大家

关于spring - 将tomcat重定向到本地系统中的apache,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56921521/

相关文章:

spring - 从 Spring MultipartFile 获取正确的文件大小

java - Spring Boot 中的 SOAP 客户端 stub 类问题

java - Hibernate 没有在 Spring Boot 项目中抛出 LazyInitializationException

security - 有没有办法强制apache返回404而不是403?

java - Spring 3.0 将请求转发到不同的 Controller

java - 我如何在带有 spring 的 servlet 过滤器中使用 @Transactional 和 sessionFactory bean

java - @RequestMapping 的 Spring 多个返回类型

mysql - Spring MVC 获取请求复合键

linux - 无法找到 mini-httpd 包?

apache - 如何使用 PHP/Apache (mod_rewrite) 将 URL 重定向为主题标签?