我希望Hip Hop虚拟机只为一个特定的网站运行php代码。所有其他网站和图像仍将由 Apache 提供。我已经安装了 HHVM,它在端口 88 上运行。
我想我需要向该网站的 .htaccess 添加一个重写规则,以将对.php文件的请求重定向到端口 88。这是正确的解决方案吗?如果是这样,我应该添加什么?
您可能希望改为反向代理。如果您有权访问虚拟主机/服务器配置文件,则可以添加如下行:
ProxyPassMatch ^/(.*)'.php$ http://127.0.0.1:88/$1.php
ProxyPassReverse / http://127.0.0.1:88/
或者,如果您打开了mod_proxy,则可以使用 P
标志在 htaccess 文件中执行此操作:
RewriteRule ^(.*)'.php$ http://127.0.0.1:88/$1.php [L,P]
ProxyPassReverse / http://127.0.0.1:88/
我通过将源代码根设置为特定网站找到了解决方案,该网站基于 SLIM/PHP 框架。它碰巧不提供任何图像,因此无需对其进行过滤。以下是 HHVM 的配置:
Server {
Port = 88
SourceRoot = /var/www/<specific-folder>
DefaultDocument = index.php
}
VirtualHost {
www {
Pattern = .*
ServerVariables {
PHP_SELF = /index.php
SCRIPT_NAME = /index.php
}
RewriteRules {
index {
pattern = ^(.*)$
to = index.php/$1
qsa = true
}
}
}
}