2017-01-09 3 views
0

Я использую NAS Synology. Я пытаюсь перенаправить на https для phpMyAdmin. Следующие работы для всех, кроме phpMyAdmin.Перенаправление на HTTPS не работает на phpMyAdmin

То, что я использовал:

<VirtualHost _default_:80 _default_:443> 
DocumentRoot "/var/services/web" 

RewriteEngine On 
RewriteCond %{REQUEST_URI} !^http://www.example.com/phpMyAdmin 
RewriteRule ^(.*)$ https://www.example.com/phpMyAdmin/$1 [R,L] 

RewriteCond %{SERVER_PORT} !443 
RewriteRule ^(/(.*))?$ https://%{HTTP_HOST}/$1 [R=301,L] 

RewriteCond %{HTTP_HOST} !^www\. 
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

</VirtualHost> 

Что я замечаю, если я введу адрес как «http://example.com/phpMyAdmin» он будет перенаправлять на «https://www.example.com/phpMyAdmin», но если я введу «http://www.example.com/phpMyAdmin» не редирект не происходит. Если я попробую «http://www.example.com» или другую папку, например «http://www.example.com/test», она будет перенаправлена ​​на https. Он не перенаправляется, если указывать на phpMyAdmin.

Пожалуйста, дайте мне идеи о том, что я могу сделать, чтобы решить проблему.

+0

вы можете проверить это 'RewriteEngine On RewriteCond% {HTTPS} от RewriteRule https: //% {HTTP_HOST}% {REQUEST_URI}' –

+0

Нет, такие же результаты. –

+0

открыть файл phpmyadmin 'config.inc.php' и добавить следующую нижнюю строку' $ cfg ['ForceSSL'] = true; '. –

ответ

0

Ответ, из-за этого является NAS Synology, заключается в том, чтобы выполнять перенаправление HTTPS в Nginx. Я не уверен, почему, учитывая тот факт, что я выбрал Apache 2.2 для моего бэкэнд. Тем не менее, Nginx это так. Я следовал инструкции здесь: (. *)

https://forum.synology.com/enu/viewtopic.php?t=115182