【问题标题】:Redirect to HTTPS fails to work on phpMyAdmin重定向到 HTTPS 无法在 phpMyAdmin 上运行
【发布时间】:2017-01-09 07:01:37
【问题描述】:

我正在使用 Synology NAS。我正在尝试为 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 时它不会重定向。

请告诉我如何解决这个问题。

【问题讨论】:

  • 你能测试一下吗RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
  • 不,同样的结果。
  • 打开 phpmyadmin 文件 config.inc.php 并在底部添加以下行 $cfg['ForceSSL'] = true;
  • 大约一年前的更新后,该命令已从 phpMyAdmin 中删除。它不起作用了。我认为他们出于安全目的将其取出。从配置中进行重定向更安全。哪个有效。但它现在在这种情况下不起作用。除了 phpMyAdmin 之外,其他所有东西都会重定向。
  • 这是除“http : // www .example.com/phpMyAdmin”之外的所有其他重定向

标签: php mysql redirect phpmyadmin


【解决方案1】:

由于这是 Synology NAS,答案是在 Nginx 中进行 HTTPS 重定向。我不知道为什么我选择了 Apache 2.2 作为我的后端。尽管如此,Nginx 确实如此。我按照此处的说明进行操作:

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

【讨论】:

    猜你喜欢
    • 2016-07-15
    • 2017-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-14
    • 2012-10-31
    相关资源
    最近更新 更多