[英]How to check in .htaccess is the subdirectory
我有一个.htaccess文件,在其中我重写了规则
RewriteRule ^([0-9A-Za-z]+)$ profile.php?username=$1
它使myproject.com/profile.php?username=iamuser
成为myproject.com/iamuser
但是,如果我想转到一个文件夹(例如“ images”),当我编写myproject.com/images
,它将以“ images”的身份作为用户名保留在profile.php上
请帮忙。 谢谢
您应该使用RewriteCond
来检查请求URI是否属于任何现有文件/目录。
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([0-9A-Za-z]+)$ profile.php?username=$1 [QSA,L]
-d
测试它是否存在并且是目录。 -f
测试它是否存在并且是文件。 如果有任何原始请求,则QSA
标志会附加查询字符串。 L
标志使其成为最后要处理的规则。 如果此规则匹配,则不会处理后面的其他规则。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.