关闭
dongqianzong4275 2014-12-03 00:15
浏览 32
已采纳

.htaccess重定向并保留文件名,不带文件扩展名

I'm redirecting but now I want to preserve the file name to resemble a directory.

I would add a query string with the name of the file to add it to the redirect URL but that doesn't make much sense.

e.g

RewriteCond %{THE_REQUEST} \ /+profile\.php\?user=([^&]+)&uid=([^&\ ]+)
RewriteRule ^ /%1/%2? [L,R=301]

Internal

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)$ profile.php?user=$1&uid=$2 [L,QSA]

this redirects to www.site.com/username/uid

I want this to be www.site.com/profile/username/uid

I would add a third query string like www.site.com/profile.php?user=username&uid=45&profile but it doesn't make much sense.

  • 写回答

1条回答 默认 最新

  • doulu1914 2014-12-03 00:19
    关注

    You might slightly modify the rewrite rule.

      RewriteCond %{THE_REQUEST} \ /+profile\.php\?user=([^&]+)&uid=([^&\ ]+) 
      RewriteRule ^ /profile/%1/%2? [L,R=301]
    

    And internally.

      RewriteRule ^profile/([^/]+)/([^/]+)$ profile.php?user=$1&uid=$2 [L,QSA]
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部