я не такой глупый, как вы подумали.
$real_ip = $_SERVER['REMOTE_ADDR']; vB_Template::preRegister('navbar',array('real_ip' => $real_ip)); return true;
{vb:raw real_ip} в нужный шаблон
О заработало. Я вставил это в модуль, а модуль в нужный объект, но получилось так, что отображается в самом верху( в начале <body>, а не там где положено.
function getRealIP() { if( $_SERVER['HTTP_X_FORWARDED_FOR'] != '' ) { $client_ip = ( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] : "unknown" ); $entries = split('[, ]', $_SERVER['HTTP_X_FORWARDED_FOR']); reset($entries); while (list(, $entry) = each($entries)) { $entry = trim($entry); if ( preg_match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/", $entry, $ip_list) ) { $private_ip = array( '/^0\./', '/^127\.0\.0\.1/', '/^192\.168\..*/', '/^172\.((1[6-9])|(2[0-9])|(3[0-1]))\..*/', '/^10\..*/'); $found_ip = preg_replace($private_ip, $client_ip, $ip_list[1]); if ($client_ip != $found_ip) { $client_ip = $found_ip; break; } } } } else { $client_ip = ( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] : ( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] : "unknown" ); } return $client_ip; }
Спасибо, а как теперь это вставить в страницу? У меня vBulletin.
Пробовал и так и сяк. Даже через include не получается
Up
========
Поднимаю тему!
Ну что? Помогите, пожалуйста
все равно. Даже если уберу location php, все равно...
В логах:
2013/09/21 22:05:46 [error] 3656#3152: *1186 CreateFile() "C:\nginx-1.5.5/html/favicon.ico" failed (2: Не удается найти указанный файл), client: 79.171.120.141, server: localhost, request: "GET /favicon.ico HTTP/1.1", host: "79.171.120.141"
Конфиг:
user nginx; worker_processes 1; error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 15; gzip on; server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root E:\VertrigoServ\www\; index index.php; proxy_pass http://79.171.120.141:88; proxy_redirect http://79.171.120.141:88 /; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_connect_timeout 120; proxy_send_timeout 120; proxy_read_timeout 180; } # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # location ~ /\.ht { deny all; } } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root E:\VertrigoServ\www; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} }
теперь на любой странице пишет Welcome to nginx!
Вот, что в логах nginx'a:
2013/09/21 18:27:11 [error] 3656#3152: *1140 CreateFile() "C:\nginx-1.5.5/html/forum.php" failed (2: Не удается найти указанный файл), client: 79.171.120.141, server: localhost, request: "GET /forum.php HTTP/1.1", host: "79.171.120.141"
Как я понял, nginx читает файлы в папке html, а мой проект находится на: E:/www/
Переношу файлы в папку html, все равно. Что менять и где?))
не в нем дело. Есть еще варианты?