【问题标题】:HTTP session unavailable while running through domain name通过域名运行时 HTTP 会话不可用
【发布时间】:2017-06-08 11:29:25
【问题描述】:

我制作了一个国际象棋网页游戏(在 Dart 中),部署到 Linux + Apache(在代理之后)。使用公网IP访问时,游戏运行流畅。但是,通过域名访问时,游戏无法运行。我同时使用了 cookie(用于令牌)和 HTTP 会话(用于游戏数据),在 cookie 和 HTTP 会话之间匹配此令牌。

这是我的 Apache 设置:

<VirtualHost *:80>
    ServerName example.com

    RewriteEngine On
    RewriteCond %{HTTP:Authorization} ^(.*)
    RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]

    ProxyPreserveHost On
    ProxyPass / http://127.0.0.1:8080/
    ProxyPassReverse / http://127.0.0.1:8080/
</VirtualHost>

我认为问题可能来自 Apache 代理背后的 cookie。有什么建议吗?

【问题讨论】:

    标签: apache session-cookies http-proxy


    【解决方案1】:

    您可能需要ProxyPassReverseCookieDomian 以确保您的会话 cookie 中的 domain= 是自引用的。查看发送的实际标头,例如开发者工具可能会说清楚。

    【讨论】:

    • 我在本地试用了该应用程序。该应用程序在 Chrome 和 Opera 上运行顺利,但在 Firefox 和 Safari 上运行失败。我认为该应用程序可能还有其他问题。无论如何,谢谢。
    猜你喜欢
    • 2010-10-07
    • 2015-03-27
    • 2015-05-26
    • 2021-12-24
    • 2022-11-16
    • 1970-01-01
    • 1970-01-01
    • 2013-07-23
    • 1970-01-01
    相关资源
    最近更新 更多