apache - 重写 .htaccess 中的 URL 以用正斜杠 (id?=value) 替换查询参数
问题描述
我已确保启用了重写引擎并且删除 .php 扩展名正在工作,所以我知道这不是问题。
我要做的只是删除 URL 的 ?id=value 方面,所以基本上使 URL 看起来像这样:
folder/medias/value
代替
folder/medias?id=value
我当前的 .htaccess 看起来像这样:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
RewriteRule ^404/?$ /404.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^ 404.php [L,R]
解决方案
使用您显示的示例/尝试,请尝试遵循 htaccess 规则。请确保在测试您的 URL 之前清除您的浏览器缓存。
RewriteEngine ON
##Rules for external rewrite.
RewriteCond %{THE_REQUEST} \s/([^.]*)\.php\?id=(\S+)\s [NC]
RewriteRule ^ /%1/%2? [R=301,L]
##Rule for internal rewrite.
RewriteRule ^([^/]*)/([^/]*)/?$ $1?id=$3 [L]
推荐阅读
- python - 获取特定条目的所有列
- pytest - 如何根据每个测试将pytest的结果记录到多个日志文件中
- c++ - 如何将unicode字符串转换为cpp中的相应语言环境字符串
- javascript - 当我的元素到达屏幕底部时,如何停止 setInterval 函数?
- java - NoSuchBeanDefinitionException:没有“org.springframework.mail.MailSender”类型的合格bean
- php - 自动从 href 下载生成的 pdf
- arrays - Build 500 数组包含静态文本和变量
- html - 垂直对齐 2 列部分中的文本/按钮
- python-3.x - “系列的真值不明确” Python 3.X /Panda 中的错误
- android - 包含更多信息的 ADB 软件包列表