我有一个部署到Heroku的应用程序,它使用Spring Security,并扩展到HttpSessionSecurityContextRepository。意识到HttpSession在扩展到多个dynos时会导致问题,我尝试使用--session_manager memcache标志(带有Heroku memcache插件)配置webapp-runner (https://github.com/jsimone/webapp-runner)。
使用Apache和mod_proxy、两个Tomcat实例和memcached 1.4.13的本地配置可以很好地工作。然而,当部署到Heroku时,它会失败,即使是一个动态随机重定向到登录页面,就像未经身份验证一样,这表明会话存储不起作用。相同的Procfile,通过heroku config验证MEMCACHE_*变量,等等。
有没有人有类似配置的经验?
发布于 2012-08-09 06:50:56
更新:配置按设计工作。
该问题是由Spring Security错误配置引起的。隐藏在应用程序中的错误图像URL触发了重定向。虽然这应该是一个简单的404,但是在context-security.xml中也有一个通用的intercept-url模式,其访问权限设置为IS_AUTHENTICATED_FULLY。结果是,任何带有错误URL的页面都会被重定向到登录页面。纠正这些URL解决了部署到Heroku时的问题,尽管我不能解释为什么它不能在本地系统上表现出来。
https://stackoverflow.com/questions/11830799
复制相似问题