[英].htaccess, check if RewriteRule Regex exists as a file or dir
為了檢查文件是否存在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是否存在(請注意:沒有子文件夾/ en!)
目錄也應如此。 結論:如果$ 3 [=(。*)在RewriteRule中]作為文件或目錄存在,則應顯示此文件或目錄,否則忽略。 如何才能做到這一點?
嘗試:
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]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.