Вот моя дилемма:
У меня много ссылок с нескольких поддоменов
https://dev.example.com/abc.html
https://xyz.example.com/abc.html
как я могу перенаправить они используют htaccess
Redirect 301 https://dev.example.com/abc.html https://xyz.example.com/abc
, очевидно, не работает sine, он может работать только с /abc
.
И, как я уже говорил, у меня там много ссылок и по какой-то причине я хотел бы иметь его в htaccess
Обратите внимание, что ab c является допустимой страницей, которая существует на целевом URL, поэтому она вызовет бесконечно l oop, если я использую /abc
, потому что он будет пренебрегать поддоменом.
Проблема не в том, чтобы перенаправить с субдомена на другой, это не так, дело в том, что у меня есть ссылки, которые я бы хотел перенаправить с субдомена на другой, а именно c ссылки.
Поэтому я не ищу что-то вроде не www to www kind синтаксиса.
Я не ищу что-то вроде этого:
RewriteEngine on
RewriteBase /
rewritecond %{http_host} ^example.com [nc]
rewriterule ^(.*)$ http://www.example.com/$1 [r=301,nc]
Если это можно сделать с помощью чего-то вроде группировки всех ссылок в определенном поддомене dev.example.com
, тогда все ссылки, перечисленные под ним, сопровождаются целевым URL.
Это можно сделать с помощью php
, но я предпочитаю, чтобы оно было в htaccess
.
Самое близкое решение, которое, я считаю, могло бы сработать, это иметь те ссылки разбросаны внутри apache vhosts
<VirtualHost *>
ServerName dev.example.com
Redirect 301 / http://example.com/
# Have the rest of links here
</VirtualHost>
Тогда
<VirtualHost *>
ServerName xyz.example.com
Redirect 301 / http://example.com/
# have the rest of the links here
</VirtualHost>
Действителен?
Обновление
RewriteCond %{HTTP_HOST} ^example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^tags\/xyz\.html\ $ "https\:\/\/dev\.example\.com\/" [R=301,L]
RewriteCond %{HTTP_HOST} ^example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^abcd$ "https\:\/\/dev\.example\.com\/" [R=301,L]
Вот что я получил в htaccess
, когда я создаю перенаправление с cpanel
. поэтому он проверяет, к какому решению я пришел.
Я близок к тому, чтобы найти решение, теперь для простоты управления им, я ищу способ сгруппировать их все в один контейнер правил.