我一直试图让重写规则工作将我的旧paypal IPN网址重定向到我的新网址,我在.htaccess文件中尝试了以下内容并且似乎无法使其工作,任何帮助将不胜感激!!
# BEGIN PayPal Fix
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^/wc-api/WC_Gateway_Paypal/
^/hosting/modules/gateways/callback/paypal.php [R=307,L]
</IfModule>
END PayPal Fix
stackoverflow上关于类似问题的另一个线程:Change the IPN url on existing subscription 请参阅jon G关于他重写的帖子,这正是我想要完成的!
感谢您的任何指导!
答案 0 :(得分:0)
您的重写规则似乎存在一些问题。
小问题是将这样的规则写成两行是不常见的。事实上,我不确定你使用的形式是否允许这样做;我希望至少有一个续行字符。所以我会先把规则放到一行。
但主要问题在于重写规则的目标。虽然重写规则的第一部分是搜索模式(正则表达式),但第二部分(目标)不是,因此您应该忽略前导^
。
您的规则应如下所示:
RewriteRule ^/wc-api/WC_Gateway_Paypal/ /hosting/modules/gateways/callback/paypal.php [R=307,L]
但我想知道为什么搜索模式中没有脚本名称。您真的想将目录映射到脚本吗?或者WC_Gateway_Paypal
只是作为目录出现,但实际上已经通过之前评估的重写规则映射到脚本?