簡體   English   中英

MOD_REWRITE,但不在子目錄中

[英]MOD_REWRITE but not in sub directories

我有以下HTACCESS代碼:

Options +FollowSymLinks
RewriteEngine On
RewriteBase   /

#RewriteCond %{REQUEST_URI} !(/cms/|/js/|/mobile/)* [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /page.php [L]

就目前而言,它可以在網站根目錄中按我需要的方式工作,但是在訪問管理頁面( /cms/ )時,我可以通過PhpConsole告知它仍在命中page.php。 我認為這是因為管理員是使用查詢字符串控制的:URI看起來像/cms/?view=pages&action=edit&id=4

如果我取消對第一個條件的注釋,則不會再出現此問題,但是我的前端返回了不存在的文件上的404,而不是重定向到page.php

我的代碼有什么問題?

使用以下方法更改代碼:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule (?!^(cms|js|mobile)(/.*|)$)^.*$ page.php [L,NC]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM