$ _SERVER ['REMOTE_ADDR'] не работает с php-fpm и nginx - PullRequest
3 голосов
/ 29 января 2011

Я не знаю, почему с nginx эта переменная $ _SERVER ['REMOTE_ADDR'] не отображает IP. На любом другом веб-сервере он работает как надо.

Есть предложения?

Ответы [ 3 ]

1 голос
/ 29 января 2011

@ Майкл, я поддерживаю проект, который предоставляет правильные параметры fastcgi для взаимодействия Nginx с FPM.Надеюсь, это поможет.

fastcgi_params на Github

1 голос
/ 29 января 2011

Я подозреваю, что это как-то связано с интерфейсом между nginx (веб-сервером) и fastcgi, который является API, в котором работает PHP.

Согласно предоставленной вами информации, API-интерфейс сервера: FPM/FastCGI

Я предлагаю вам внимательно взглянуть на детали того, как PHP устанавливается с nginx (вы его не предоставили).

Если вам не требуется производительность nginx, тоВы можете найти прагматичное решение - просто использовать apache.Я использую nginx в качестве обратного прокси-сервера перед apache, но это создает некоторые дополнительные проблемы с передачей REMOTE_ADDR в PHP (в частности, mod_rpaf).

Удачи!

0 голосов
/ 29 января 2011

Это из файла conf nginx

user http;worker_processes 1;

error_log /var/log/nginx/error.log;pid /var/run/nginx.pid;

events {worker_connections 1024;# multi_accept on;}

http {include mime.types;default_type application / octet-stream;access_log /var/log/nginx/access.log;

sendfile        on;
#tcp_nopush     on;

#keepalive_timeout  0;
keepalive_timeout  65;
tcp_nodelay        on;

gzip  on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";

server {listen 80;имя_сервера www.fireangel.ro fireangel.ro;access_log /var/log/nginx/localhost.access.log;

Местоположение по умолчанию

location / {
    root    /var/www/html/fireangel.ro/public_html;
    index  index.php;
}

Изображения и статический контент обрабатываются по-разному

location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
  access_log        off;
  expires           30d;
  root  /var/www/html/fireangel.ro/public_html;

}

Анализировать всеphp-файл в каталоге / srv / http

location ~ .php$ {
    fastcgi_split_path_info ^(.+\.php)(.*)$;
    fastcgi_pass   backend;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME   /var/www/html/fireangel.ro/public_html$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_intercept_errors        on;
    fastcgi_ignore_client_abort     off;
    fastcgi_connect_timeout 60;
    fastcgi_send_timeout 180;
    fastcgi_read_timeout 180;
    fastcgi_buffer_size 128k;
    fastcgi_buffers 4 256k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
}

Отключить просмотр .htaccess & .htpassword

location ~ /\.ht {
    deny  all;
}

} обратный поток исходных данных {сервер 127.0.0.1:9000;}

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...