/ / .htaccess Как да пренапишете поддомейн в корен и основен домейн в подпапка - .htaccess, mod-rewrite

.htaccess Как да презапишем поддомейн на root и основния домейн в подпапка - .htaccess, mod-rewrite

Имам следния код на htaccess:

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/.*
RewriteRule ^(.*)$ subfolder/another/$1 [L]

RewriteCond %{REQUEST_URI} !^/subfolder/another/
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ subfolder/another/index.php

Така че, когато отида на domain.com отива до root / подпапка / друга И когато отворя sub.domain.com, той също отива в root / подпапка / друг, но аз искам да отиде в root.

Затова добавих това в допълнение към горното:

RewriteCond %{HTTP_HOST} ^sub.domain.com$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

но все още отива към root / подпапка / друга Какво трябва да направя?

Отговори:

1 за отговор № 1

Ако искате правилото да съвпада само когато поискате сайта от domain.com, създайте условие, което съответства само, когато поискате от сайта domain.com, Освен това няма смисъл за мен какво правят първите две правила.

Също така, точките за бягство, когато искате да съвпадат с буквални точки.

RewriteCond %{HTTP_HOST} ^domain.com$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ subfolder/another/index.php [L]

RewriteCond %{HTTP_HOST} ^sub.domain.com$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]