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

Головоломка: php-код отображается при включении https

Когда я пытаюсь настроить https (пусть nginx прослушивает 443 с настройками ssl) и получает доступ к моей странице, происходит довольно удивительная вещь: я вижу, что отображается мой php-код.

Я вижу это в конфиге nginx fastcgi_pass 127.0.0.1:9000;

Означает ли это, что nginx направляет запрос php на порт 9000? моя настройка для https такая

server {
listen 443;

ssl on;
ssl_certificate /etc/domain_com.crt;
ssl_certificate_key /etc/domain.key;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM;

server_name domain.com;
}

Кстати, моя исходная структура - это haproxy для nginx. Надеюсь, что кто-то из опытных в этом вопросе может немного меня просветить. Спасибо!

Вам не хватает location ~ \.php блок, который передает запросы вверх по потоку в php-fpm. Скопируйте и вставьте его из своего server блок, который обслуживает веб-сайт HTTP. За исключением настроек, связанных с SSL, два server блоки, вероятно, должны быть идентичными.