Как перенаправить .htaccess для http и https на поддомен - PullRequest
0 голосов
/ 17 июня 2020

Я читал много веток по этому поводу и пробовал много итераций, чтобы заставить перенаправление работать для моего сайта, но все еще не могу заставить его работать. Это было создано лет go с чьей-то помощью, и теперь я не могу вспомнить некоторые особенности.

В настоящее время работает:

http:// mydomain.com (dns)
http:// www.mydomain.com (dns)
https:// api.mydomain.com (dns)  // points to directory /api

В root mydomain .com - это файл .htaccess с включенной перезаписью:

RewriteCond %{HTTP_HOST} ^api\. [NC]
RewriteRule !^api/ api%{REUEST_URI} [L,NC] // this works

Каталог / api и поддомен api.mydomain.com имеют собственный CERT для трафика HTTPS c. В каталоге / api есть еще один файл .htaccess. Теперь, не имея большого опыта в этом, я не могу вспомнить, почему у меня есть этот второй файл .htaccess - или он все еще нужен.

RewriteConf %{HTTP_HOST} !^api\. [NC,OR]
RewriteCond %{HTTPS} off
RewriteRule ^ -   [F]

Все вышеперечисленное работает.

Во-первых, может ли кто-нибудь помочь объяснить два файла .htaccess - оба они необходимы? Что конкретно второй делает с %{HTTPS} off - когда этому субдомену специально нужен HTTPS.

Во-вторых, я пытаюсь добавить новый субдомен, который будет указывать на новый подкаталог HTTPS. Я хочу, чтобы трафик HTTP и HTTPS c для этого нового поддомена перенаправлялся в одно и то же расположение HTTPS:

http://portal.mydomain.com -> rewrite OR redirect to https://portal.mydomain.com
https://portal.mydomain.com -> rewrite to `/api/vendor`

Для этого нужно ли мне перезаписывать оба файла .htaccess? - Я перепробовал много комбо, но ничего не работает. Когда я go на http://portal.mydomain.com я получаю сообщение об ошибке, страница SORRY - IP Changed/Site Moved/Confi Error закашлялась из папки / cgi-sys.

И когда я go до https://portal.mydomain.com Получаю Forbidden - 403 error

...