.htaccess 子文件夹html文件中漂亮url的Htaccess规则

tpgth1q7  于 2022-11-16  发布在  其他
关注(0)|答案(1)|浏览(160)

我目前正试图使漂亮的网址,我尝试了其他职位的代码,并成功地重写使用下面的代码

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?g/(.*?)/?$ /g.html?name=$1 [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /g\.html\?name=([^\&\ ]+)
RewriteRule ^/?g\.html$ /g/%1? [L,R=301]
RewriteCond %{THE_REQUEST} /([^.]+)\.html [NC]
RewriteRule ^ /%1 [NC,L,R]

RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^ %{REQUEST_URI}.html [NC,L]

它将我的主文件夹g.html?name=this更改为g/this,但我需要在我的子文件夹/sub/w. html中重写html文件,请帮助将其更改为lo sub/w/this

iq0todco

iq0todco1#

请将这些规则放在htaccess规则文件的顶部,并尝试检查您的URL。请确保在测试URL之前清除浏览器缓存。
同时确保把你的htaccess文件和新文件夹沿着(不是在里面,和它一起)。

RewriteEngine ON
RewriteCond %{THE_REQUEST} \s/(new)/w\?name=(\S+)\s [NC]
RewriteRule ^ /%1/%2? [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(name)/([^/]*)/?$ $1/$2.html [L]

***注意:***我在规则中专门匹配此处得名称文件夹,因为您现有得规则也会检查不存在得页面,所以不想与之冲突.

相关问题