Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re[3]: Редирект файлов на скрипт
Hello Vasiliy,
Wednesday, June 10, 2009, 3:26:39 PM, you wrote:
VP> Здравствуйте, Alex
VP> C last уже пробовал (и сейчас еще раз попробовал) -
VP> получается Redirect Loop
VP> Вы писали Wednesday, June 10, 2009, 2:25:55 PM:
>> 09.06.2009 17:16, Vasiliy Petrov wrote:
>>> Здравствуйте, Nginx-ru
>>>
>>> Хочется, чтобы запросы на zip- и rar-файлы, передавались бы php-скрипту
>>> для сбора статистики.
>>>
>>> Но когда в браузере пишу http://www.mysite.com/1.zip, то появляется
>>> диалог сохранения файла, файл 1.zip скачивается, но внутри него вместо
>>> данных находится код скрипта!
резкну предположить, что ваш скрпит не проходит через обработку самим
php и в итоге nginx отдает его как текстовый файл.
>>>
>>> (Скрипт - это downloads pepper для mint, он
>>> работает много где, т.е. сам скрипт рабочий.
>>> Хомяк: http://pepper.pralinenschachtel.de/ ).
>>>
>>> На сервере Ubuntu 9.04 установлен nginx 0.7.5.9/php/php-fpm последние.
>>> Nginx работает один, апача нету.
>>>
>>> В конфиге моего сайта следующее:
>>>
>>> location ~ \.(zip|rar)$ {
>>> root /path/to/public_dir/;
>>> if (!-f $request_filename) {
>>> rewrite ^(.*)$ download.html redirect;
>>> }
>>>
>>> rewrite ^(.*)$
>>> /path/to/script/downloads/tracker.php?url=http://$http_host/$request_uri
>>> break;
>> - rewrite ^(.*)$
>> /path/to/script/downloads/tracker.php?url=http://$http_host/$request_uri
>> break;
>> + rewrite ^(.*)$
>> /path/to/script/downloads/tracker.php?url=http://$http_host/$request_uri
>> last;
>>> }
>>>
>>> location ~ \.php(.*)$ {
попробуйте
- location ~ \.php(.*)$ {
+ location ~* ^.+\.php$ {
>>> root /path/to/public_dir/;
>>> fastcgi_pass 127.0.0.1:9000;
>>> fastcgi_index index.php;
>>> include /usr/local/nginx/conf/fastcgi_params;
>>> }
>>>
>>> Подскажите плиз в чем тут дело
>>>
>>> P.S. В доке по использованию скрипта есть пример для апача:
>>> <FilesMatch "\.(zip|rar|tar\.gz)$">
>>> RewriteCond %{REQUEST_FILENAME} -f
>>> RewriteRule ^(.*)$
>>> http://site.com/path/downloads/tracker.php?url=http://%{HTTP_HOST}%{REQUEST_URI}&force
>>> </FilesMatch>
>>>
>>>
--
Best regards,
Roman mailto:sirotar@xxxxxxx
|