.htaccess с маскировкой поддоменов и перенаправлением https - PullRequest
0 голосов
/ 11 октября 2018

Я хочу:

A: Перенаправить любые http: // URL-адреса на https://

B: перенаправить мои дочерние домены в определенные папки, оставляя URL-адрес в браузере без изменений (маскирование)

(у меня уже есть сертификаты SSL для всего домена и любого субдомена)

Моя текущая структура примерно

public_html/.htaccess [A]
public_html/sucursales/subdom1/.htaccess [B]
public_html/sucursales/subdom1/<otherfiles>
public_html/sucursales/subdom2/.htaccess [B]
public_html/sucursales/subdom2/<otherfiles>
...

У меня есть 2 разных файла .htaccess,один в public_html непосредственно [A], а другой в каждой папке поддоменов [B] (каждая подпапка имеет один и тот же файл [B])

В настоящее время мне удалось получить A с помощью файла .htaccess [A]содержащий:

ErrorDocument 404 https://www.mysite.com.mx/404.htm
RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

И я достиг B с .htaccess [B], содержащий:

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_URI} !^/sucursales/
RewriteCond %{HTTP_HOST} ^(.+)\.domain\.com$
RewriteCond %1 !=www
RewriteRule ^(.*)$ /sucursales/%1/$1 [L]

Мне удалось создать файл [B] на основе этого ответа: https://stackoverflow.com/a/7590572/1385198

Проблема в том, что если я перехожу на http://subdom1.mysite.com.mx (небезопасно), он отображает содержимое папки поддоменов и сохраняет URL-адрес в браузере (маскируя), но не перенаправляет на https://subdom1.mysite.com.mx (безопасный), поэтому браузер сообщает, что он небезопасный.

If I manually введите https://subdom1.mysite.com.mx, он отображается правильно, сохраняет URL-адрес (маскирование) и, очевидно, отображается как безопасный.

Теперь, что мне нужно сделать, чтобы любой субдомен перенаправлял на свою версию https, сохраняя при этоммаскировка?

Какой .htaccess я должен изменить и как.Еще лучше, могу ли я иметь все в одном файле .htaccess?

Я попытался изменить файл [B], изменив последнюю часть с

RewriteRule ^(.*)$ /sucursales/%1/$1 [L]

до

RewriteRule ^(.*)$ https://mysite.com.mx/sucursales/%1/$1 [L]

, но все равно не работает.

...