Мне нужно создать .htaccess, который сохраняет мой URL красивым и перенаправляет на https, если он находится на http.
У меня есть правило .htaccess, которое сохраняет мой URL красивым:
RewriteEngine On
RewriteRule ^([a-z0-9\-]+|)/?$ index.php?site=$1 [QSA,NC]
Этоработает очень хорошо, он меняется http://panel.loc/index.php?site=siteName&restOfUrl на http://panel.loc/siteName?restOfUrl
Проблема появилась, когда я пытался добавить перенаправление на https.
Например, этот код генерирует URL https://panel.loc/?site=
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?panel\.loc$
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteRule ^([a-z0-9\-]+|)/?$ index.php?site=$1 [QSA,NC]
Я пробовал много других комбинаций, но все не удалось.
Чего я хочу достичь?URL http://panel.loc/index.php?site=siteName должен быть перенаправлен на https://panel.loc/siteName Он должен сохранять это правило
RewriteRule ^([a-z0-9\-]+|)/?$ index.php?site=$1 [QSA,NC]
и должен перенаправлять на https, если его на http.