htaccess - 使用子域和管理目录

htaccess - using subdomains and admin dir

我有.htaccess喜欢这个代码:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^admin/(.*)?$ admin/index.php?a= [QSA,NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{HTTP_HOST} ^(www.)?(([^.]+).)?domain.com [NC]
RewriteRule ^(.*)$ index.php?s=%3&d=domain.com&a= [QSA,NC,L]

我需要访问目录 /admin,其中 index.php 并使用子域。 当我删除时,可以访问管理员:RewriteCond %{HTTP_HOST} ^(www.)?(([^.]+).)?domain.com [NC]

目录看起来像:index.php; admin/index.php

有人可以帮助我吗,我做错了什么?
任何信息都有帮助,谢谢。

您可以像这样从第 2 条规则跳过 /admin

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^admin/(.*)$ admin/index.php?a= [QSA,NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/admin [NC]
RewriteCond %{HTTP_HOST} ^(www\.)?(([^.]+)\.)?domain\.com$ [NC]
RewriteRule ^(.*)$ index.php?s=%3&d=domain.com&a= [QSA,L]