我正在尝试 mod_spdy 但遇到了一个问题 - 它似乎与 AJAX 请求和 mod_php 不兼容,如下所示:https://www.modspdy.com/blog/2012/04/15/using-mod_spdy-with-php/
解决方案似乎是通过 fastCGI 运行 php 脚本。现在我的第一个问题是,为什么会这样?是否有某种解决方法?这种不兼容只是暂时的吗?我不想因为这个就将整个生产服务器切换到 fastCGI。这样做有什么优点/缺点?
另外,我不明白为什么它需要 https。为什么一个简单的网站(比如说静态网站)不能通过 mod_spdy 提高速度?我在这里寻找简单的推测 - 您是否认为 mod_spdy 将来会在没有 mod_ssl 要求的情况下可用,或者架构是否如此不同以至于我不应该在任何时候期待它?
希望我表达清楚了我的想法。谢谢你的想法。
答案1
我正在尝试 mod_spdy 但遇到了一个问题 - 它似乎与 AJAX 请求和 mod_php 不兼容,如下所示:https://www.modspdy.com/blog/2012/04/15/using-mod_spdy-with-php/
解决方案似乎是通过 fastCGI 运行 php 脚本。现在我的第一个问题是,为什么会这样?是否有某种解决方法?这种不兼容只是暂时的吗?
您能解释一下关于 AJAX 的意思吗?
mod_php
不能很好地与 配合使用,mod_spdy
因为 SPDY 使用线程将多个请求多路复用到单个连接中,这可能会导致 出现问题mod_php
。它很好地放在mod_spdy
文档:
与 Apache Worker MPM 非常相似,mod_spdy 使用内部线程池来处理请求(为了实现 SPDY 多路复用),这可能会与非线程安全的 Apache 模块产生不良交互。特别是,如果你想通过 mod_spdy 提供 PHP,强烈建议你使用 mod_fcgid 而不是 mod_php因为有些 PHP 库不是线程安全的;使用 mod_fcgid 将在单独的进程中运行 PHP,从而避免线程安全问题。
这样做有什么优点/缺点?
看这个 Stack Overflow 问题进行该主题的讨论。
另外,我不明白为什么它需要 https。为什么一个简单的网站(比如说静态网站)不能通过 mod_spdy 提高速度?我在这里寻找简单的推测 - 您是否认为 mod_spdy 将来会在没有 mod_ssl 要求的情况下可用,或者架构是否如此不同以至于我不应该在任何时候期待它?
不 - SPDY 是故意设计为需要 SSL 的。当然,告诉你它永远不会放弃 SSL 要求也只是猜测。但有几个重要原因它不会放弃:
这对于协议的运行是必要的。
TLS Next Protocol Negotiation 扩展对于客户端和服务器来说是必要的,以便让对方知道它们都支持 SPDY。
这对互联网有好处。
包括谷歌在内的许多互联网巨头都已经意识到,即使你没有立即向他们提供你的信用卡号,网站也应该运行 SSL。
Firesheep 让 cookie 劫持变得简单,这就是为什么你会注意到你的 Facebook 或 Twitter 连接现在总是加密的。同样的已提出请求您正在阅读本文的 Stack Exchange 网络。对于生活在不允许自由使用互联网的制度下的人们来说,连接安全更令人担忧。