Apache 不影响子域的laravel的htaccess
我试图让htaccess为laravel 5.4工作,但不影响创建的子域 我当前的访问权限Apache 不影响子域的laravel的htaccess,apache,.htaccess,redirect,mod-rewrite,Apache,.htaccess,Redirect,Mod Rewrite,我试图让htaccess为laravel 5.4工作,但不影响创建的子域 我当前的访问权限 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^ index.php [L] 我尝试在子域文件夹中设置htaccess,如下所示: RewriteEngine On 正如我在其他地方读到的,这应该会停止顶级域htaccess,但是当我有一个子域像dev.example.com时,它
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L]
我尝试在子域文件夹中设置htaccess,如下所示:
RewriteEngine On
正如我在其他地方读到的,这应该会停止顶级域htaccess,但是当我有一个子域像dev.example.com时,它会重定向到dev.example.com/dev
不管怎么说,最终还是要摆脱/dev
文件夹结构:
app
bootstrap
config
database
public
storage
resources
routes
dev --> subdomain
前面,我看不出这个
/dev
与您所展示的指令有什么关系。他们都没有在任何地方添加/dev
。也许只是应用了子目录
“这应该停止顶级域名访问”的说法并不完全正确。从 在.htaccess文件中找到的配置指令应用于找到.htaccess文件的目录及其所有子目录 但是,还必须记住,在更高的目录中可能有.htaccess文件。指令按找到它们的顺序应用 因此,特定目录中的.htaccess文件可能会覆盖目录树中较高位置的.htaccess文件中的指令。而这些指令又可能覆盖了更高级别的指令,或者覆盖了主服务器配置文件本身中的指令 因此.htaccess不会停止另一个.htaccess,但指令会覆盖指令。这意味着,您可能有来自一个.htaccess的一些指令和来自顶层.htaccess的另一个无关指令
在您的情况下,
RewriteEngine on
只会覆盖主.htaccess文件中的RewriteEngine on
如果你想阻止任何重写规则
从顶部.htaccess,我宁愿尝试
RewriteEngine off
我刚刚试着关闭引擎,很遗憾,这似乎导致了同样的错误。我也知道当前的htaccess没有显示为什么它在最后添加了自己的子域,但是我的子域在没有htaccess的情况下工作得很好,只是我的顶级域没有任何附加指令,我看不到子目录是如何附加的。查看的唯一方法是查看Apache的日志文件。今晚我将查看Apache日志文件,除此之外,我可能认为添加/dev是因为它是一个子域,因为它是文件夹名?我刚刚更新了显示文件夹结构的问题。这个子域是如何配置的?它是一个单独的虚拟主机,以
dev
作为文档根吗?实际上,它是自己的虚拟主机,将dev设置为文档根,事实上,它是由directadmin创建的