rename() failed (13: Permission denied).

pavel at pronskiy.ru pavel at pronskiy.ru
Mon Aug 25 01:34:33 MSD 2008


На самом деле веб-сервер ругается на это:

(13: Permission denied)


> >   fastcgi_store           on;
> >   -fastcgi_store_access    user:rw  group:rw  all:r;
> >   +fastcgi_store_access    user:rw  group:rw  all:rw;

или выключить.




Igor Sysoev пишет:
> On Thu, Aug 21, 2008 at 07:23:36PM +0400, Владислав Комиссаров wrote:
>
>   
>> Переменные - совсем зло?
>>
>> Переделал все на без srv_root - все работает.
>>     
>
> Переменные не зло, просто не нужно использовать их там, где они совсем не нужны.
>
>   
>> Остался только один вопрос.
>>
>> ...
>>
>> location / {
>>    index index.php;
>> }
>>
>> location ~* \.php$ {
>>   include /etc/nginx/www/include/fastcgi_params.conf;
>> }
>> ...
>>
>> В таком случае, есть какой-нить элегантный способ, чтобы *.php файлы в
>> локейшене /uploads/ не уходили на fastcgi?
>>
>> location /uploads/ {
>>    location ~* \.php$ {
>>       deny all;
>>    }
>> }
>>
>>  как-то некошерненько :(
>>     
>
> Если их нужно просто отдавать как статику, то так:
>
> location ^~ /uploads/ {
> }
>
> location ~* \.php$ {
>    include /etc/nginx/www/include/fastcgi_params.conf;
> }
>
>   
>> Раньше, у меня это работало через
>>
>> location /uploads/ {
>>    root $srv_root;
>> }
>>
>> Если попробовать: root $document_root
>> the $document_root variable may not be used in the "root" directive
>>     
>
> Потому что $document_root и есть значение root.
>
>   
>> Спасибо.
>>
>>
>> 21 августа 2008 г. 17:31 пользователь Igor Sysoev <is at rambler-co.ru>написал:
>>
>>     
>>> On Thu, Aug 21, 2008 at 05:25:19PM +0400, Владислав Комиссаров wrote:
>>>
>>>       
>>>> Заметил в error.log следующую ошибку:
>>>>
>>>> 2008/08/21 16:49:12 [crit] 31836#0: *316 rename()
>>>> "/var/tmp/nginx/fastcgi/3/04/0000000043" to
>>>> "/var/www/phpMyAdmin/navigation.php" failed (13: Permission denied) while
>>>> reading upstream, client: 89.175.80.253, server: mysql.domain.ru,
>>>>         
>>> request:
>>>       
>>>> "GET /navigation.php?token=83f3ab3525f0dba8d3aba091e4004678 HTTP/1.1",
>>>> upstream: "fastcgi://unix:/var/run/php.sock:", host: "mysql.domain.ru",
>>>> referrer: "http://mysql.domain.ru/"
>>>>
>>>> Если дать nginx права записи (chown -R www-data:www-data
>>>> /var/www/phpMyAdmin/)  то вот кусок того, что становится с файлом.
>>>>
>>>>
>>>>         
>>> ^_<8b>^H^@^@^@^@^@^@^C??]yo^[G<96>??_<9f>????<80>,id??I??:-r!Kr??^X_#????d^M<83>i²<8b>b????n??^O^]<99>^M^P;<9b>??.<9c>M2A<80>^M^F<98>??:??????^B²'^;>??^B??<8d>??????>??&??<94>HN??n^C??????^U??z????^]????c????????<8d><9d><8f>nl<91><9a>UW??<8d>[^W??\??
>>>       
>>>> ??<9c>(??????<86>(n??l<92>^O^???s??
>>>>
>>>> До этого, на его месте был стройненький код пхпмайадмина.
>>>>         
>>> Ну да, так и должно быть, если используются
>>>
>>>   fastcgi_store           on;
>>>   fastcgi_store_access    user:rw  group:rw  all:r;
>>>
>>> Что касается $srv_root, то он не нужен:
>>>
>>> -   set $srv_root   /var/www/phpMyAdmin;
>>> -   root $srv_root;
>>> +   root            /var/www/phpMyAdmin;
>>>
>>>
>>>    location ~* \.php$ {
>>>
>>> -   fastcgi_param   DOCUMENT_ROOT   $srv_root/;
>>> -   fastcgi_param   SCRIPT_FILENAME $srv_root$fastcgi_script_name;
>>> -   fastcgi_param   PATH_TRANSLATED $srv_root$fastcgi_script_name;
>>> +   fastcgi_param   DOCUMENT_ROOT   $document_root/;
>>> +   fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
>>> +   fastcgi_param   PATH_TRANSLATED $document_root$fastcgi_script_name;
>>>
>>>
>>>   location ~* ^.+.(zip|tgz|gz|rar|bz2 ...
>>> -     root     $srv_root/;
>>>
>>>
>>>       
>>>> /usr/local/nginx/sbin/nginx -V
>>>> nginx version: nginx/0.7.11
>>>> built by gcc 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
>>>> configure arguments: --conf-path=/etc/nginx/nginx.conf
>>>> --http-log-path=/var/log/nginx/access_log
>>>> --error-log-path=/var/log/nginx/error_log --pid-path=/var/run/nginx.pid
>>>> --http-client-body-temp-path=/var/tmp/nginx/client
>>>> --http-proxy-temp-path=/var/tmp/nginx/proxy
>>>> --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi --with-pcre=../pcre-7.7
>>>> --with-zlib=../zlib-1.2.3 --without-select_module
>>>>         
>>> --without-http_ssi_module
>>>       
>>>> --without-http_userid_module --without-http_auth_basic_module
>>>> --without-http_geo_module --without-http_map_module
>>>> --without-http_referer_module --without-http_memcached_module
>>>> --without-http_empty_gif_module --without-http_browser_module
>>>> --without-http_upstream_ip_hash_module --without-mail_pop3_module
>>>> --without-mail_imap_module --without-mail_smtp_module
>>>> --with-http_stub_status_module
>>>>
>>>>
>>>> Конфиг:
>>>>
>>>> server {
>>>>   listen         80;
>>>>   server_name    mysql.domain.ru;
>>>>   set $srv_root  /var/www/phpMyAdmin;
>>>>
>>>>   root $srv_root;
>>>>
>>>>   location / {
>>>>     index index.html index.php;
>>>>   }
>>>>
>>>>   location ~* \.php$ {
>>>>   fastcgi_pass   unix:/var/run/php.sock;
>>>>   fastcgi_index index.php;
>>>>   fastcgi_connect_timeout 30;
>>>>   fastcgi_send_timeout 300;
>>>>
>>>>   fastcgi_read_timeout 300;
>>>>   fastcgi_buffer_size 32k;
>>>>   fastcgi_buffers 4 32k;
>>>>   fastcgi_busy_buffers_size 32k;
>>>>   fastcgi_store           on;
>>>>   fastcgi_store_access    user:rw  group:rw  all:r;
>>>>
>>>>   fastcgi_temp_file_write_size 32k;
>>>>
>>>>   fastcgi_intercept_errors on;
>>>>
>>>>   fastcgi_param   DOCUMENT_ROOT   $srv_root/;
>>>>   fastcgi_param   SCRIPT_FILENAME $srv_root$fastcgi_script_name;
>>>>   fastcgi_param   PATH_TRANSLATED $srv_root$fastcgi_script_name;
>>>>   fastcgi_param   SCRIPT_NAME     $fastcgi_script_name;
>>>>   fastcgi_param   QUERY_STRING    $query_string;
>>>>   fastcgi_param   REDIRECT_STATUS 200;
>>>>
>>>>   fastcgi_param   CONTENT_TYPE    $content_type;
>>>>   fastcgi_param   CONTENT_LENGTH  $content_length;
>>>>
>>>>   fastcgi_param   SERVER_ADDR     $server_addr;
>>>>   fastcgi_param   SERVER_PORT     $server_port;
>>>>   fastcgi_param   SERVER_PROTOCOL $server_protocol;
>>>>   fastcgi_param   SERVER_SOFTWARE "nginx";
>>>>   fastcgi_param   GATEWAY_INTERFACE       "CGI/1.1";
>>>>   fastcgi_param   SERVER_NAME     $server_name;
>>>>   fastcgi_param   REQUEST_URI     $request_uri;
>>>>   fastcgi_param   REQUEST_METHOD  $request_method;
>>>>   fastcgi_param   REMOTE_USER     $remote_user;
>>>>   fastcgi_param   REMOTE_ADDR     $remote_addr;
>>>>   fastcgi_param   REMOTE_PORT     $remote_port;
>>>>   }
>>>>
>>>>   location ~*
>>>>
>>>>         
>>> ^.+.(zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|mp3|wmv|avi|swf)$
>>>       
>>>> {
>>>>       root     $srv_root/;
>>>>       expires         30d;
>>>>   }
>>>> }
>>>>         
>>> --
>>> Игорь Сысоев
>>> http://sysoev.ru
>>>
>>>
>>>       
>
>   

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20080825/f272ec99/attachment.html>


More information about the nginx-ru mailing list