我有这样的网址:
http://www.domain.tld/index.php?url=http://www.otherdomain.tld
现在我想使用mod_rewrite,以便将此url重写为如上所述的url:
http://www.domain.tld/check/http://www.otherdomain.tld
我也尝试过url_encoded:
http://www.domain.tld/check/http%3A%2F%2Fwww.otherdomain.tld
两个版本都不起作用。我总是得到404错误说
The requested URL /check/http://www.otherdomain.tld was not found on this server.
我是mod_rewrite的新手,并尝试了以下规则:
RewriteRule check/(.*)$ /index.php?url=$1
适用于任何非类似url的参数(例如test
),但不适用于类似URL的参数。
我们非常感谢您解决此规则。
提前致谢。
马克
答案 0 :(得分:0)
您是否在服务器上启用了Mod重写?
您是否在该规则之前写过“RewriteEngine On”? 您的htaccess文件应如下所示:
RewriteEngine On
RewriteRule check /(.*)$ /index.php?url=$1
要检查Apache服务器上是否未启用mod_rewrite,只需在.htaccess文件中输入一些随机内容,因为它应该会破坏所有网站。