У меня есть простая конфигурация nginx, играющая в качестве прокси для обработки ssl-запросов. Проблема в том, что когда я вхожу в phpmyadmin на https://files.mysite.com/phpmyadmin
, он перенаправляет меня на http://files.mysite.com:443
и бросаем:
400 Bad request: The plain HTTP request was sent to HTTPS port
Я посмотрел здесь и на суперпользователя и не нашел ничего, что подходило бы к этой проблеме. Вот файл конфигурации nginx:
server {
listen 0.0.0.0:80;
server_name files.mysite.com;
return 301 https://files.mysite.com$request_uri;
}
server {
listen 0.0.0.0:443 ssl;
server_name files.mysite.com;
ssl on;
ssl_certificate /etc/letsencrypt/live/files.mysite.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/files.mysite.com/privkey.pem;
root /home/mysite/mysite.com/files;
index index.html;
location ^~ /phpmyadmin {
root /usr/share/;
index index.php;
include conf-available/php5.conf;
}
}
Я использую почти одинаковую конфигурацию на всех поддоменах с различными веб-инструментами и без проблем, поэтому я действительно запутался!
Спасибо за помощь !
РЕДАКТИРОВАТЬ: меня попросили показать вывод wget -S files.mysite.com
так вот
И, по-видимому, он хорошо перенаправляется с http: 80 на https: 443, но затем по какой-то причине переключается обратно на http: 443
EDIT2: на самом деле он не перенаправляется на http: 443, когда wget -S
, это достигается только тогда, когда я успешно вхожу в phpmyadmin