Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Nginx

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6

Открыть новую тему     Написать ответ в эту тему

Fafnir777

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NGINX + spawn-fcgi + PHP 5.2.6
 
NGINX отдает только sitename.com/script.php
 
При создании подкаталога, например вида sitename.com/subdir/script.php, выбрасывает 404.
 
Конфиг
*******************************************
user www;
worker_processes 2;
 
pid /var/run/nginx.pid;
error_log /var/log/nginx-error.log warn;
 
events {
  worker_connections 1024;
  use kqueue;
}
 
http {
  include mime.types;
  default_type application/octet-stream;
 
  # log options
  log_format main '$remote_addr - $remote_user [$time_local] '
  '"$request" $status $bytes_sent '
  '"$http_referer" "$http_user_agent" '
  '"$gzip_ratio"';
 
  # nginx options
  sendfile on;
  tcp_nopush on;
  tcp_nodelay on;
  keepalive_timeout 65;
  server_tokens off;
 
 
 # fastcgi
  fastcgi_intercept_errors on;
 
  server {
  listen 80;
 
  server_name localhost;
 
  access_log /var/log/nginx.log main;
  location ~* ^.+\.(php)$ {
  fastcgi_pass 127.0.0.1:1026;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME /usr/local/www/nginx$fastcgi_script_name;
  include fastcgi_params;
  }
 
  location / {
  root /usr/local/www/mydomain;
  index index.php index.html index.htm;
  }
  }
 
server {
  listen 80;
 
  server_name sitename.com www.sitename.com;
 
  access_log /var/log/nginx.log main;
  location ~* ^.+\.(php)$ {
  fastcgi_pass 127.0.0.1:1026;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME /usr/local/www/sitename.com$fastcgi_script_name;
  include fastcgi_params;
  }
 
  location / {
  root /usr/local/www/sitename.com;
  index index.php index.html index.htm;
  }
  }
}

Всего записей: 9 | Зарегистр. 08-02-2005 | Отправлено: 00:49 14-10-2008
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TNR

Цитата:
можно как то кратко ?

nginx не делает замену внутри  
только если собран с модулем https://nginx.org/ru/docs/http/ngx_http_sub_module.html

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 08:14 16-10-2023
TNR



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
нашел скомпиленную сборку с включенным http_sub_module и что просто в конфиг ставлю  
 
location / {
    proxy_pass http://192.168.10.51/;
    sub_filter '<a href="http://192.168.10.51/'  '<a href="http://$host/';
    sub_filter '<img src="http://192.168.10.51/' '<img src="http://$host/';
    sub_filter_once on;
}
 
А в $host добавляю порт ?

Всего записей: 1761 | Зарегистр. 15-03-2004 | Отправлено: 08:57 16-10-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TNR

Цитата:
А в $host добавляю порт ?

<a href="http://$host:$server_port/';

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 09:02 16-10-2023
TNR



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
Ничего не происходит, может как то нужно отдельно в конфиге включить функционал ?
Сам модуль я так понимаю просто ищет строку href="http://192.168.10.51/ и заменяет на значения $host:$server_port ?

Всего записей: 1761 | Зарегистр. 15-03-2004 | Отправлено: 09:48 16-10-2023 | Исправлено: TNR, 09:50 16-10-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TNR

Цитата:
Ничего не происходит, может как то нужно отдельно в конфиге включить функционал ?

так я же не знаю какие ресуры у вас на странице загружается напрямую, как выглядит URL в них.
только картинки и ссылки? может там кавычки другие?
 

Цитата:
строку href="http://192.168.10.51/  

он ищет то, как написали, <a href=...
 
можно одной строкой
sub_filter '192.168.10.51'  '$host:$server_port';
 
в код страницы посмотрите, что и как выглядит.
 
и     sub_filter_once off;

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 09:50 16-10-2023 | Исправлено: Mavrikii, 09:56 16-10-2023
TNR



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
указал sub_filter '192.168.10.51'  '$host:$server_port'; ничего не меняет, в коде страницы как было 192.168.10.51 так и стоит.  
 
 
Может сборка nginx кривая.
 
nginx version: nginx/1.19.8
built by cl
built with OpenSSL 1.1.1j  16 Feb 2021
TLS SNI support enabled
configure arguments: --with-cc=cl --with-cc-opt=-DFD_SETSIZE=1024 --builddir=objs --with-debug --prefix= --sbin-path=nginx.exe --conf-path=conf/nginx.conf --pid-path=logs/nginx.pid --lock-path=logs/nginx.lock --http-log-path=logs/access.log --error-log-path=logs/error.log --http-client-body-temp-path=temp/client_body_temp --http-proxy-temp-path=temp/proxy_temp --http-fastcgi-temp-path=temp/fastcgi_temp --http-scgi-temp-path=temp/scgi_temp --http-uwsgi-temp-path=temp/uwsgi_temp --with-pcre=objs/lib/pcre-8.44 --with-zlib=objs/lib/zlib-1.2.11 --with-openssl=objs/lib/openssl-1.1.1j --with-openssl-opt='no-asm no-tests -D_WIN32_WINNT=0x0501' --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-poll_module --with-select_module --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --add-module=objs/lib/nginx-rtmp-module --add-module=objs/lib/nginx-goodies-nginx-sticky-module-ng-08a395c66e42

Всего записей: 1761 | Зарегистр. 15-03-2004 | Отправлено: 10:06 16-10-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TNR

Цитата:
в коде страницы как было 192.168.10.51 так и стоит.

страница gzipнутая? он не будет распаковывать.
 

Код:
location / {
    proxy_set_header Accept-Encoding "";
    proxy_pass http://192.168.10.51/;
    sub_filter_once off;
    sub_filter '192.168.10.51'  '$host:$server_post';
}

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 10:15 16-10-2023
TNR



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
страница gzipнутая?

как определить ? при просмотре кода я вижу ссылки
 

Цитата:
location / {
    proxy_set_header Accept-Encoding "";
    proxy_pass http://192.168.10.51/;
    sub_filter_once off;
    sub_filter '192.168.10.51'  '$host:$server_post';
}

 
также никаких изменений

Всего записей: 1761 | Зарегистр. 15-03-2004 | Отправлено: 10:27 16-10-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TNR

Цитата:
как определить ? при просмотре кода я вижу ссылки

смотреть заголовки ответа, F12 в браузере
   
 

Цитата:
также никаких изменений

значит что то не договариваете или не там меняете.  
какой content-type у возвращаемой страницы?

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 10:30 16-10-2023
TNR



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
Content-Encoding:
gzip
 
стоит

Всего записей: 1761 | Зарегистр. 15-03-2004 | Отправлено: 10:44 16-10-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TNR

Цитата:
стоит

значит .51 выдает сжатий контент, заменить в нем, не разжимая, nginx не может.
нужно заставить его выдавать без сжатия (для этого и идет очистка Accept-Encoding
либо, если есть модуль, https://nginx.org/ru/docs/http/ngx_http_gunzip_module.html
 
либо отключить сжатие на .51

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 10:46 16-10-2023 | Исправлено: Mavrikii, 10:55 16-10-2023
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Nginx


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru