我正在尝试从根目录中获取.htaccess
文件,但也使用RewriteRule
作为子目录。
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/admin/index.php$ [NC]
RewriteRule ^admin/(.*)$ /admin/index.php?_pd=$1 [QSA,L]
RewriteRule ^(.*)$ /index.php?_pd=$1 [QSA,L]
</IfModule>
但是在尝试访问/admin/login
等时遇到404错误。这种工作方式:
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?_pd=$1 [QSA,L]
RewriteCond %{REQUEST_URI} !^/admin/index.php$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^admin/(.*)$ /admin/index.php?_pd=$1 [QSA,L]
</IfModule>
但不是它应该怎么做。有些东西有用,有些则没有。
答案 0 :(得分:1)
这实际上是因为我错过了ErrorDocument
显然.htaccess
,因为admin
文件夹中没有包含同一文档,因此不遵守应该遵守的规则,而是试图为我提供该文件。