From 4d268e9d7c494d045916f5da3d27d7330101b51a Mon Sep 17 00:00:00 2001 From: Alexander Makarov Date: Mon, 21 Oct 2013 02:29:04 +0400 Subject: [PATCH] Simplified nginx configuration --- docs/guide/installation.md | 51 ++++++++++------------------------------------ 1 file changed, 11 insertions(+), 40 deletions(-) diff --git a/docs/guide/installation.md b/docs/guide/installation.md index 8ec3619..11e6a5e 100644 --- a/docs/guide/installation.md +++ b/docs/guide/installation.md @@ -83,57 +83,28 @@ Yii to catch all requests to nonexistent files, which allows us to have nice-loo ~~~ server { - set $host_path "/www/mysite"; - access_log /www/mysite/log/access.log main; - - server_name mysite; - root $host_path/htdocs; - set $yii_bootstrap "index.php"; - charset utf-8; - location / { - index index.html $yii_bootstrap; - try_files $uri $uri/ /$yii_bootstrap?$args; - } + listen 80; + server_name mysite.local; + root /path/to/project/webroot/directory - location ~ ^/(protected|framework|themes/\w+/views) { - deny all; - } + access_log /path/to/project/log/access.log main; - #avoid processing of calls to unexisting static files by yii - location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ { - try_files $uri =404; + location / { + try_files $uri $uri/ /index.php?$args; # Redirect everything that isn't real file to index.php including arguments. } - # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 - # - location ~ \.php { - fastcgi_split_path_info ^(.+\.php)(.*)$; - - #let yii catch the calls to unexising PHP files - set $fsn /$yii_bootstrap; - if (-f $document_root$fastcgi_script_name){ - set $fsn $fastcgi_script_name; - } - - #for php-cgi + location ~ \.php$ { + include fastcgi.conf; fastcgi_pass 127.0.0.1:9000; - #for php-fpm #fastcgi_pass unix:/var/run/php5-fpm.sock; - include fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$fsn; - - #PATH_INFO and PATH_TRANSLATED can be omitted, but RFC 3875 specifies them for CGI - fastcgi_param PATH_INFO $fastcgi_path_info; - fastcgi_param PATH_TRANSLATED $document_root$fsn; } - location ~ /\.ht { - deny all; + location ~ /\.(ht|svn|git) { + deny all; } } ~~~ -Using this configuration you can set `cgi.fix_pathinfo=0` in php.ini to avoid -many unnecessary system `stat()` calls. +Make sure to set `cgi.fix_pathinfo=0` in php.ini to avoid many unnecessary system `stat()` calls.