.htaccess - .htaccess RewriteRule 中的阿拉伯语 ( م ) 字符问题
问题描述
我对م
.htaccess RewriteRule 中的 () 阿拉伯字符有疑问。
问题是 :
当我打开网址时,localhost/site/cat/مرئيات
我得到这样的错误页面:
但是当我localhost/site/cat/برئيات
通过更改 ( م
) 字符或删除它来更改它时,它可以像这样正常工作:
其他阿拉伯字符工作正常,那么在我的情况下哪里错了?
我的 .htaccess 文件内容:
Options None
Options FollowSymLinks
AddDefaultCharset UTF-8
AddType 'text/html; charset=UTF-8' .html
AddCharset UTF-8 .html
RewriteEngine On
RewriteRule ^cat/(.*)/?$ cat.php?title=$1 [NC,L]
请帮助和感谢。
解决方案
通过将重写规则更改为以下内容,我设法使其在我的本地主机上工作:
RewriteRule ^cat/([^/.]+)$ cat.php?title=$1 [QSA,L]
所以它匹配除“/”或“.”以外的任何字符。我不太清楚为什么它不接受你的版本。请务必在刷新之前删除缓存!
推荐阅读
- javascript - ThreeJS WebGLRenderTarget 有空白纹理
- r - 在 R 中处理时间变量以进行 ANOVA
- python - 如何将布尔值分配给变量并将分配的变量传递给Python中的if语句
- mongodb - 为什么 $dateToString (aggregation) 将日期转换为少 1 天?
- python - 关于变量范围的棘手 Python 问题
- python - 即时重新加载 Cython 模块
- azure - 如何将 Microsoft.WindowsAzure.Storage.Table.TableEntity 转换为 Microsoft.Azure.Cosmos.Table.TableEntity
- kotlin - 为什么只有协程的 main 中的 runBlocking 无法编译?
- node.js - NodeJS:从交互式控制台处理 Promise
- html - 用于隐藏纯文本的正确 CSS 选择器是什么?