рд╕рд╛рд░рд╛рдВрд╢
рдШреЛрд╖рд┐рдд: 2010-05-20
рдХреНрд░реЗрдбрд┐рдЯ: 80 рд╕реЗрдХреЗрдВрдб
рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ: fastcgi_pass рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде ngnix + php рдкрд░ рд╕рд╛рдЗрдЯреЗрдВ

рдкреГрд╖реНрдарднреВрдорд┐
рдЕрдХреНрд╕рд░, рдХреИрд╕реЗ-рдХреИрд╕реЗ php-fpm / php-cgi рдХреЗ рд╕рд╛рде рдПрдХ nginx рдмрдВрдбрд▓ рд╕реЗрдЯ рдХрд░рдиреЗ рдкрд░ рд╕рдорд╛рди рд▓рд╛рдЗрдиреЗрдВ рд╣реЛрддреА рд╣реИрдВ:
location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; include fastcgi_params; }
рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╡рд░реНрдгрди
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рдЖрдк рд╕рд░реНрд╡рд░ рд╕реЗ
example.com/1px.gif/test.php рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддреЗ рд╣реИрдВ, рддреЛ URI
1px.gif/test.php
рдЬреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛, рдЬреЛ
location \.php$
SCRIPT_FILENAME
location \.php$
рд╕реВрдЯ рдХрд░рддрд╛ рд╣реИ, рдФрд░
SCRIPT_FILENAME
рдмрд░рд╛рдмрд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
/scripts/1px.gif/test.php
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдЧрд░
cgi.fix_pathinfo == 1
(рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ), рддреЛ
SCRIPT_FILENAME
рдмрд░рд╛рдмрд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░
PATH_INFO
рдмрд░рд╛рдмрд░
test.php
рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рдирд╛рдпрдм! рдХреБрдЫ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ, рднреЗрджреНрдпрддрд╛
1px.gif%00test.php
рдЬреИрд╕реЗ URL рдХреЛ рдЯреНрд░рд┐рдЧрд░
1px.gif%00test.php
рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, php рджреБрднрд╛рд╖рд┐рдпрд╛ /
/scripts/1px.gif
рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдЧрд╛ред рд╡рд╣ рд╣реИ,
рдкреНрд░рднрд╛рд╡
рдХреЛрдИ рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рд░реНрд╡рд░ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрд╡рддрд╛рд░) рдХреЗ рд▓рд┐рдП рдлрд╛рдЗрд▓ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛, рдлрд┐рд░ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдЫрд╡рд┐ рдмрдирд╛ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдПрдХ рд╕рд╛рде рдЬреАрдбреА рдЖрдХрд╛рд░реЛрдВ рдХреЛ рдорд╛рдиреНрдп рдХрд░реЗрдЧрд╛ рдФрд░ рдкреАрдПрдЪрдкреА рджреБрднрд╛рд╖рд┐рдпрд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╕рд░реНрд╡рд░ рдкрд░ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╣реЛрдЧрд╛ред
рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣рд▓
php.ini
cgi.fix_pathinfo=0
рдпрд╛ nginx.conf рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ
location ~ \.php$ { try_files $fastcgi_script_name =404; fastcgi_index index.php; fastcgi_param script_FILENAME /scripts$fastcgi_script_name; include fastcgi_params; }
рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рднреА рдЧреИрд░-рдореМрдЬреВрджрд╛
.php
рдлрд╝рд╛рдЗрд▓реЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдЧрд╛