Я установил ssl-сертификат на свой сервер, много читал и делал все разные предложенные вещи, но мне кажется, что переменная $ _SERVER ['HTTPS'] не отображается. Кто-нибудь, пожалуйста, помогите. Вот мой конфиг:
Сервер: Linode Ubuntu 8.02LTS nginx - последний создал виртуальный хост:
server {
listen 443;
server_name www.buzzonstage.com;
rewrite ^/(.*) https://buzzonstage.com/$1 permanent;
}
server {
listen 443;
server_name buzzonstage.com;
ssl on;
ssl_certificate /usr/local/nginx/conf/buzzonstage.com.pem;
ssl_certificate_key /usr/local/nginx/conf/buzzonstage.com.key;
access_log /home/maksimize/public_html/buzzonstage.com/log/access.log;
error_log /home/maksimize/public_html/buzzonstage.com/log/error.log;
location / {
root /home/maksimize/public_html/buzzonstage.com/public/;
index index.php index.html;
if (!-e $request_filename)
{
rewrite ^/(.*)$ /index.php?q=$1 last;
}
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include /usr/local/nginx/conf/fastcgi_params;
fastcgi_param SCRIPT_FILENAME /home/maksimize/public_html/buzzonstage.com/public/$fastcgi_script_name;
fastcgi_param HTTPS on;
}
}
server {
listen 80;
server_name www.buzzonstage.com;
rewrite ^/(.*) http://buzzonstage.com/$1 permanent;
}
server {
listen 80;
server_name buzzonstage.com;
access_log /home/maksimize/public_html/buzzonstage.com/log/access.log;
error_log /home/maksimize/public_html/buzzonstage.com/log/error.log;
location / {
root /home/maksimize/public_html/buzzonstage.com/public/;
index index.php index.html;
if (!-e $request_filename)
{
rewrite ^/(.*)$ /index.php?q=$1 last;
}
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include /usr/local/nginx/conf/fastcgi_params;
fastcgi_param SCRIPT_FILENAME /home/maksimize/public_html/buzzonstage.com/public/$fastcgi_script_name;
Подтверждение от digicert возвращается точно, но я получаю сообщение о том, что некоторая информация может быть небезопасной - я понимаю, что это так из-за различных ссылок на незащищенные страницы на сайте. Phpinfo показывает зеленый https;
Но для работы определенного модуля drupal - securepages - мне нужно иметь возможность отображать эту переменную в массиве $ _SERVER.
Я не понял последнюю часть вашего вопроса, вам нужно, что показывать как в $_SERVER
массив?
В любом случае, SSL запускается до того, как произойдет какой-либо обмен хостом, поэтому у вас может быть только один IP-адрес HTTPS. Ваша конфигурация прямо сейчас делает все запросы для обработки сервером по умолчанию.
Взгляните на это краткое руководство и это решит большинство ваших сомнений относительно SSL и Nginx.