【发布时间】:2014-02-05 17:48:38
【问题描述】:
我想调用如下所示的 URL:
并让 mod_rewrite 输出:
http://mydomain.com/js/js.php?id=123456
我目前的尝试是这样的:
RewriteRule ^([0-9]+)\.js$ /js/js.php?id=$1 [L]
【问题讨论】:
标签: mod-rewrite
我想调用如下所示的 URL:
并让 mod_rewrite 输出:
http://mydomain.com/js/js.php?id=123456
我目前的尝试是这样的:
RewriteRule ^([0-9]+)\.js$ /js/js.php?id=$1 [L]
【问题讨论】:
标签: mod-rewrite
好吧,假设您的 htaccess 在根目录中,我看不出有什么问题。
我能想象的唯一问题是前导斜杠,具体取决于您的 Apache 版本。
你可以试试这个:
RewriteRule ^/?([0-9]+)\.js$ /js/js.php?id=$1 [L]
另外,最好禁止访问您的 php 文件并将其重定向到您漂亮的 url:
RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*\/js/js\.php\?id=([0-9]+)
RewriteRule ^ /%1.js? [R=301,L]
RewriteRule ^/?([0-9]+)\.js$ /js/js.php?id=$1 [L]
【讨论】:
您在网址中缺少初始 /。试试:
RewriteRule ^/([0-9]+)\.js$ /js/js.php?id=$1 [L]
【讨论】: