为了检查文件是否为eixists(不存在),我会写出类似的东西
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^((en|es|de)/)?([a-z0-9\+_-]+)/?$ something.php?hl=$2&seoq=$3 [QSA,L,NC]
这很好用,但是如何检查文件是否存在基于RewriteRule的结果变量。
-
示例:
RewriteCond $3 -f (???)
RewriteRule ^((en|es|de)/)?(.*) $3?hl=$2 [QSA,L,NC]
-
它应该做什么/应该做什么?
每当一个文件,例如 / en / subdir /something.jpg,在地址栏中调用,服务器应该看, / subdir /something.jpg存在(请注意:没有子文件夹/烯!)
目录也应如此。结论:如果RewriteRule中的$ 3 [=(。*)]作为文件或目录存在,它应显示此文件或目录,否则忽略。怎么办呢?
答案 0 :(得分:0)
尝试:
RewriteCond %{REQUEST_URI} ^((en|es|de)/)?(.*)
RewriteCond %{DOCUMENT_ROOT}/%3 !-f
RewriteCond %{DOCUMENT_ROOT}/%3 !-d
RewriteRule ^((en|es|de)/)?([a-z0-9\+_-]+)/?$ something.php?hl=$2&seoq=$3 [QSA,L,NC]