【问题标题】:403 Forbidden only when accessing via IP403 仅在通过 IP 访问时禁止
【发布时间】:2014-05-07 01:02:56
【问题描述】:

我遇到了一个非常奇怪的问题。我正在通过对象标签嵌入视频播放器。如果我通过服务器 url(例如 127.0.0.1/stream.html 而不是 localhost/stream.html)访问该页面,该页面会加载,但会停留在白屏上。使用 FireFox 中的 Web 开发人员工具,控制台在抓取 SWF 播放器时显示403: Forbidden Error。当我使用主机名时,没有问题。

【问题讨论】:

    标签: html apache web


    【解决方案1】:

    您的开发环境中是否设置了cross-domain.xml?含义是将 SWF 播放器硬编码为从localhost/path/to/player.swf 嵌入,因此它将从localhost 的相同主机名加载,但会与127.0.0.1 阻塞。阅读更多on this site

    您可以尝试通过将此文件设置为 localhost 文档根目录的文件名 cross-domain.xml 来解决此问题:

    <?xml version="1.0"?>
    <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
    <cross-domain-policy>
        <allow-access-from domain="*"/>
    </cross-domain-policy>
    

    【讨论】:

    • SWF 文件托管在其他地方的服务器上,我只是将其拉入本地服务器。
    • @AlexGiunta 这可能解释了这个问题。在托管 SWF 的任何服务器上,检查此 URL:http://whatever.host/cross-domain.xml 也许cross-domain.xml 只允许localhost?查看cross-domain.xml 的内容,看看你能收集到什么。
    • 我找到了 crossdomain.xml 文件,但没有一个条目说 localhost 和/或我的网络服务器的主机名。我认为值得注意的是,我在 LAN 上执行此操作。当我使用外部 URL 访问我的 Web 服务器时,它也不起作用。它仅在我在 LAN 上并使用灯服务器的内部主机名时才有效。
    猜你喜欢
    • 2014-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-11
    • 1970-01-01
    • 1970-01-01
    • 2019-03-26
    相关资源
    最近更新 更多