我试图mod_rewrite一个URL,但遗憾的是没有运气。
http://mywebsite.com/gallery/mycustom-gallery/linkid417
应改为:
http://mywebsite.com/gallery/mycustom-gallery/#417
其中'417'是图像的动态id& mycustom-gallery
也会每次都发生变化。
我已经尝试了以下规则,但似乎都没有...
RewriteRule ^/gallery/$1/#([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/y/([0-9]+)$ /gallery/$1/linkid [L,R=301]
RewriteRule mycustom-gallery/#.*$ /mycustom-gallery/linkid=417/$1
此致 查尔
答案 0 :(得分:0)
如果您尝试从http://mywebsite.com/gallery/mycustom-gallery/linkid417重写为http://mywebsite.com/gallery/mycustom-gallery/#417,可以按以下方式进行:
RewriteRule ^/gallery/([a-zA-Z0-9_-]+)/linkid([0-9]+)$ /gallery/$1/#$2 [NE,L,R=301]
NE|noescape
标志阻止Apache在301重定向期间转义URL中的哈希值。
如果您希望执行相反的操作,即从http://mywebsite.com/gallery/mycustom-gallery/#417重定向到http://mywebsite.com/gallery/mycustom-gallery/linkid417,则无法完成,因为请求的片段部分(“#417”)未传递给Apache以及RFC1808的请求。