<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=KOI8-R" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
На самом деле веб-сервер ругается на это:<br>
<br>
<pre wrap="">(13: Permission denied)</pre>
<br>
<pre wrap=""><span class="moz-txt-citetags">&gt; &gt; </span>  fastcgi_store           on;
<span class="moz-txt-citetags">&gt; &gt; </span>  -fastcgi_store_access    user:rw  group:rw  all:r;
<span class="moz-txt-citetags">&gt; &gt; </span>  +fastcgi_store_access    user:rw  group:rw  all:rw;

или выключить.
</pre>
<br>
<br>
<br>
Igor Sysoev пишет:
<blockquote cite="mid:20080821153305.GQ47243@rambler-co.ru" type="cite">
  <pre wrap="">On Thu, Aug 21, 2008 at 07:23:36PM +0400, Владислав Комиссаров wrote:

  </pre>
  <blockquote type="cite">
    <pre wrap="">Переменные - совсем зло?

Переделал все на без srv_root - все работает.
    </pre>
  </blockquote>
  <pre wrap=""><!---->
Переменные не зло, просто не нужно использовать их там, где они совсем не нужны.

  </pre>
  <blockquote type="cite">
    <pre wrap="">Остался только один вопрос.

...

location / {
   index index.php;
}

location ~* \.php$ {
  include /etc/nginx/www/include/fastcgi_params.conf;
}
...

В таком случае, есть какой-нить элегантный способ, чтобы *.php файлы в
локейшене /uploads/ не уходили на fastcgi?

location /uploads/ {
   location ~* \.php$ {
      deny all;
   }
}

 как-то некошерненько :(
    </pre>
  </blockquote>
  <pre wrap=""><!---->
Если их нужно просто отдавать как статику, то так:

location ^~ /uploads/ {
}

location ~* \.php$ {
   include /etc/nginx/www/include/fastcgi_params.conf;
}

  </pre>
  <blockquote type="cite">
    <pre wrap="">Раньше, у меня это работало через

location /uploads/ {
   root $srv_root;
}

Если попробовать: root $document_root
the $document_root variable may not be used in the "root" directive
    </pre>
  </blockquote>
  <pre wrap=""><!---->
Потому что $document_root и есть значение root.

  </pre>
  <blockquote type="cite">
    <pre wrap="">Спасибо.


21 августа 2008 г. 17:31 пользователь Igor Sysoev <a class="moz-txt-link-rfc2396E" href="mailto:is@rambler-co.ru">&lt;is@rambler-co.ru&gt;</a>написал:

    </pre>
    <blockquote type="cite">
      <pre wrap="">On Thu, Aug 21, 2008 at 05:25:19PM +0400, Владислав Комиссаров wrote:

      </pre>
      <blockquote type="cite">
        <pre wrap="">Заметил в 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,
        </pre>
      </blockquote>
      <pre wrap="">request:
      </pre>
      <blockquote type="cite">
        <pre wrap="">"GET /navigation.php?token=83f3ab3525f0dba8d3aba091e4004678 HTTP/1.1",
upstream: "fastcgi://unix:/var/run/php.sock:", host: "mysql.domain.ru",
referrer: <a class="moz-txt-link-rfc2396E" href="http://mysql.domain.ru/">"http://mysql.domain.ru/"</a>

Если дать nginx права записи (chown -R www-data:www-data
/var/www/phpMyAdmin/)  то вот кусок того, что становится с файлом.


        </pre>
      </blockquote>
      <pre wrap="">^_&lt;8b&gt;^H^@^@^@^@^@^@^C??]yo^[G&lt;96&gt;??_&lt;9f&gt;????&lt;80&gt;,id??I??:-r!Kr??^X_#????d^M&lt;83&gt;i²&lt;8b&gt;b????n??^O^]&lt;99&gt;^M^P;&lt;9b&gt;??.&lt;9c&gt;M2A&lt;80&gt;^M^F&lt;98&gt;??:??????^B²'^;&gt;??^B??&lt;8d&gt;??????&gt;??&amp;??&lt;94&gt;HN??n^C??????^U??z????^]????c????????&lt;8d&gt;&lt;9d&gt;&lt;8f&gt;nl&lt;91&gt;&lt;9a&gt;UW??&lt;8d&gt;[^W??\??
      </pre>
      <blockquote type="cite">
        <pre wrap="">??&lt;9c&gt;(??????&lt;86&gt;(n??l&lt;92&gt;^O^???s??

До этого, на его месте был стройненький код пхпмайадмина.
        </pre>
      </blockquote>
      <pre wrap="">Ну да, так и должно быть, если используются

  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/;


      </pre>
      <blockquote type="cite">
        <pre wrap="">/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
        </pre>
      </blockquote>
      <pre wrap="">--without-http_ssi_module
      </pre>
      <blockquote type="cite">
        <pre wrap="">--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 ~*

        </pre>
      </blockquote>
      <pre wrap="">^.+.(zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|mp3|wmv|avi|swf)$
      </pre>
      <blockquote type="cite">
        <pre wrap="">{
      root     $srv_root/;
      expires         30d;
  }
}
        </pre>
      </blockquote>
      <pre wrap="">--
Игорь Сысоев
<a class="moz-txt-link-freetext" href="http://sysoev.ru">http://sysoev.ru</a>


      </pre>
    </blockquote>
  </blockquote>
  <pre wrap=""><!---->
  </pre>
</blockquote>
<br>
</body>
</html>