Правильна ли конфигурация?
Serguei V. Melekhov
kisulja2000 at mail.ru
Mon Dec 22 23:55:44 MSK 2008
Igor Sysoev пишет:
> On Sat, Dec 20, 2008 at 03:48:07PM +0300, Serguei V. Melekhov wrote:
>
>
>> Хотел спросить верно ли всё делаю. Есть сайт со страницами
>> пользователей где в бэкенде стоит апач
>>
>>
>> <VirtualHost xx.xx.xx.xx:8087>
>> ServerName name.domain.ru
>> DocumentRoot /var/www/name.domain.ru/vnames
>> RewriteEngine on
>> RewriteRule ^(.*)$
>> /var/www/name.domain.ru/vnames/htdocs/script.php?user=%{HTTP_HOST}&url=$1
>> [L]
>> Options FollowSymLinks
>> </VirtualHost>
>>
>>
>> хочу заменить это на связку ngnix + fastcgi где бэкенд вообще другая
>> машина для чего делаю следующее
>>
>>
>> server {
>> listen 80;
>> server_name *.domain.ru;
>> charset windows-1251;
>>
>> access_log off;
>>
>> error_page 500 502 503 504 /50x.html;
>> location = /50x.html {
>> root /usr/local/nginx/html;
>> }
>>
>> error_page 404 = /404.php;
>>
>> location / {
>>
>> fastcgi_pass backend:9090;
>> rewrite ^(.*)$ ?user=$host&url=$1 last;
>>
>> fastcgi_connect_timeout 30;
>> fastcgi_send_timeout 300;
>> fastcgi_read_timeout 300;
>>
>> fastcgi_param SCRIPT_FILENAME
>> /var/www/name.domain.ru/vnames/htdocs/script.php;
>> fastcgi_ignore_client_abort on;
>>
>> fastcgi_param DOCUMENT_ROOT $document_root;
>> fastcgi_param PATH_TRANSLATED
>> /var/www/name.domain.ru/vnames/htdocs/script.php;
>> fastcgi_param QUERY_STRING $query_string;
>> fastcgi_param REMOTE_ADDR $remote_addr;
>>
>> fastcgi_param REQUEST_METHOD $request_method;
>> fastcgi_param CONTENT_TYPE $content_type;
>> fastcgi_param CONTENT_LENGTH $content_length;
>>
>> fastcgi_param SCRIPT_NAME $fastcgi_script_name;
>> fastcgi_param REQUEST_URI $request_uri;
>> fastcgi_param DOCUMENT_URI $document_uri;
>> fastcgi_param SERVER_PROTOCOL $server_protocol;
>> fastcgi_param GATEWAY_INTERFACE CGI/1.1;
>> fastcgi_param REMOTE_PORT $remote_port;
>> fastcgi_param SERVER_ADDR $server_addr;
>> fastcgi_param SERVER_PORT $server_port;
>> fastcgi_param SERVER_NAME $server_name;
>> fastcgi_param HTTP_X_REAL_IP $remote_addr;
>>
>> fastcgi_buffer_size 4k;
>> fastcgi_buffers 16 32k;
>> }
>> }
>>
>> Вопрос всё ли верно сделано? Есть ли более правильные способы?
>>
>
> rewrite не нужен:
>
> rewrite ^(.*)$ ?user=$host&url=$1 last;
>
> а нужно передавать это прямо в QUERY_STRING:
>
> fastcgi_param QUERY_STRING user=$host&url=$request_uri;
>
> И ещё, вот это:
>
> error_page 404 = /404.php;
>
> в данной конфигурации бессмысленно.
>
>
>
Игорь,
А как передать еще и данные из query_string в данном примере?
fastcgi_param QUERY_STRING user=$host&url=$request_uri$query_string; ????????
так?
More information about the nginx-ru
mailing list