mirror of
https://github.com/yiisoft/yii2.git
synced 2025-08-15 14:50:56 +08:00
Simplified nginx configuration
This commit is contained in:
@ -83,57 +83,28 @@ Yii to catch all requests to nonexistent files, which allows us to have nice-loo
|
|||||||
|
|
||||||
~~~
|
~~~
|
||||||
server {
|
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;
|
charset utf-8;
|
||||||
|
|
||||||
|
listen 80;
|
||||||
|
server_name mysite.local;
|
||||||
|
root /path/to/project/webroot/directory
|
||||||
|
|
||||||
|
access_log /path/to/project/log/access.log main;
|
||||||
|
|
||||||
location / {
|
location / {
|
||||||
index index.html $yii_bootstrap;
|
try_files $uri $uri/ /index.php?$args; # Redirect everything that isn't real file to index.php including arguments.
|
||||||
try_files $uri $uri/ /$yii_bootstrap?$args;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
location ~ ^/(protected|framework|themes/\w+/views) {
|
location ~ \.php$ {
|
||||||
deny all;
|
include fastcgi.conf;
|
||||||
}
|
|
||||||
|
|
||||||
#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;
|
|
||||||
}
|
|
||||||
|
|
||||||
# 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
|
|
||||||
fastcgi_pass 127.0.0.1:9000;
|
fastcgi_pass 127.0.0.1:9000;
|
||||||
#for php-fpm
|
|
||||||
#fastcgi_pass unix:/var/run/php5-fpm.sock;
|
#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 {
|
location ~ /\.(ht|svn|git) {
|
||||||
deny all;
|
deny all;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
Using this configuration you can set `cgi.fix_pathinfo=0` in php.ini to avoid
|
Make sure to set `cgi.fix_pathinfo=0` in php.ini to avoid many unnecessary system `stat()` calls.
|
||||||
many unnecessary system `stat()` calls.
|
|
||||||
|
Reference in New Issue
Block a user