我正试图让这个htaccess代码起作用:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^fld/(.*) http://example.com/fld/$1?proxy=http://example.com [P]
RewriteRule ^/?$ http://example.com/fld/app/cobra/847?remoteaddr=%{REMOTE_ADDR}&proxy=http://mydomain.com/customfolder [QSA,P]
</IfModule>
mod_rewrite已启用,但我被告知Litespeed上没有启用/可用mod_proxy。
是否有PHP解决方法来运行它?
由于
答案 0 :(得分:2)
我只是在LiteSpeed上尝试同样的事情并找到了你的帖子。我可以实现代理的唯一方法是通过一个简单的单行PHP脚本。
<?= file_get_contents('http://example.com/');
所以要做你正在做的事情,那就更像是这样......
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^fld/(.*) proxy.php?fld=$1 [QSA,last]
RewriteRule ^?$ proxy.php [QSA,last]
</IfModule>
在proxy.php
:
<?= file_get_contents(
'http://example.com/'
. '?fld=' . $_GET['fld']
. '&remoteaddr=' . $_SERVER['REMOTE_ADDR']
);
我希望这是有道理的。如果您的托管服务提供商碰巧以这种方式阻止远程URL,您可能需要使用更多代码的curl。