Назад | Перейти на главную страницу

apache force, если URL-адрес имеет определенный шаблон, перенаправление на https

Как я могу заставить Apache если URI начинаться с шаблона «admin-» или содержать перенаправление «admin / user / login» на https с тем же uri.

Например:

Если URI:

http://examplesite.com/admin-2dns24dw 

Перенаправить на:

https://examplesite.com/admin-2dns24dw 

И если URI:

http://examplesite.com/en/admin/user/login/msg

перенаправить на:

https://examplesite.com/en/admin/user/login/msg

И если есть https URI который не имеет ни одного из этих шаблонов, должен быть перенаправлен на http того же URL.

Например:

Если URI:

https://examplesite.com/fa/dashboard

Перенаправить на:

http://examplesite.com/fa/dashboard

** ОБНОВИТЬ **

Я попытался:

 RewriteCond %{HTTPS} !=on
 RewriteCond %{THE_REQUEST} admin-|admin/users/login [NC]
 RewriteRule ^(my) https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]

но это не сработало.

в чем проблема?

Это очень просто, используя mod_rewrite:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(foo|bar)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

Это перезапишет любой URL-адрес, соответствующий шаблону в RewriteRule к тому же URL через HTTPS.

Можешь попробовать mod_alias - HTTP-сервер Apache Директива перенаправления.

Example:

Redirect /service http://foo2.example.com/service 

* ОБНОВИТЬ *

Redirect /admin-2dns24dw https://examplesite.com/fa/dashboard