redirecionar um diretório para um novo domínio sem tocar no site principal

redirecionar um diretório para um novo domínio sem tocar no site principal

Eu gostaria de redirecionarhttps://mineyourmind.de/forumparahttps://mineyourmind.net/forum.

Todas as regras de reescrita que consegui no Google não funcionaram, eles também redirecionaram o domínio principal (mineyourmind.de).

Estou redirecionando http: // www. e http:// e https:// através do siteconfig do Apache.

RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\.mineoyurmind\.de$ [NC]
RewriteRule (.*) https://mienoyurmind.de%{REQUEST_URI} [R=301,L]

O .htaccess do diretório do fórum é assim:

ErrorDocument 401 default
ErrorDocument 403 default
ErrorDocument 404 default
ErrorDocument 500 default

<IfModule mod_rewrite.c>
    RewriteEngine On

    #   If you are having problems with the rewrite rules, remove the "#" from the
    #   line that begins "RewriteBase" below. You will also have to change the path
    #   of the rewrite to reflect the path to your XenForo installation.
    #RewriteBase /xenforo

    #   This line may be needed to enable WebDAV editing with PHP as a CGI.
    #RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt) - [NC,L]
    RewriteRule ^.*$ index.php [NC,L] 
</IfModule>

Devo adicionar a reescrita de mineyourmind.de/forum para mineyourmind.net/forum à configuração do site apache ou ao htaccess e como isso deve ser?


editar:

Eu tentei assim:

RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\.mineyourmind\.de$ [NC]
RewriteRule (.*) https://mineyourmind.de%{REQUEST_URI} [R=301,L]
RewriteRule (/forum.*) https://mineyourmind.net/$1 [R=301,L]

e assim

RewriteEngine On
RewriteRule (/forum.*) https://mineyourmind.net/$1 [R=301,L]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\.mineyourmind\.de$ [NC]
RewriteRule (.*) https://mineyourmind.de%{REQUEST_URI} [R=301,L]

ambos não estão funcionando

Responder1

Aqui está uma regra para redirecionar todas as solicitações que começam com "/forum".

RewriteRule (/forum.*) https://mineyourmind.net/$1 [R=301,L]

Isso significa "quando o URI começa com"/forum", você deve capturar o URI inteiro e apenas substituir o nome do host por mineyourmind.de. Isso $1significa "o que você acabou de combinar".

Editar:

Para garantir que você também não redirecione nenhum arquivo que comece com "fórum" no nome, você pode precisar de duas regras.

# To match /forum only:
RewriteRule ^/forum$ https://mineyourmind.net/$1 [R=301,L] 
# To match any URI under the /forum directory, e.g. "/forum/" and "/forum/someotherfile.html"
RewriteRule ^/forum/(.*) https://mineyourmind.net/forum/$1 [R=301,L]

Fim da edição

Se você deve fazer isso em .htaccess ou na configuração do site Apache depende um pouco de como seu sistema está configurado, ou seja, onde você armazena outra documentação específica do site. De modo geral, há uma pequena sobrecarga ao usar .htaccess, já que o Apache irá reler o arquivo .htaccess para cada nova solicitação, enquanto a configuração do site só será lida quando o servidor for reiniciado. Mas, como regra, eu manteria todas as configurações de reescrita juntas no mesmo arquivo, tanto quanto possível, para facilitar o gerenciamento. Se é .htacces, ou virtualhost.conf, ou httpd.conf, depende de você.

Você também deveria lera documentação do RewriteRule, que explica em que circunstâncias você precisa incluir a inicial /em seu RewriteRule.

informação relacionada