server { listen 80; server_name cy.com; index index.html index.htm index.php default.html default.htm default.php; root /home/wwwroot/cy; location / { if (-e $request_filename) { break; }
if (-f $request_filename) {
expires max;
break;
} if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; } } # include ci.conf; location ~ .*\.(php|php5)?$ { try_files $uri =404; fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; include fcgi.conf; } location /index.php { fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_param SCRIPT_FILENAME /home/wwwroot/cy/index.php; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fcgi.conf; } # location ~ /index.php/ { # fastcgi_pass unix:/tmp/php-cgi.sock; # fastcgi_index index.php; # include fcgi.conf; # } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; } location ~ .*\.(js|css)?$ { expires 12h; } access_log off; }
在Nginx下經過ci框架開發項目時,發現ci框架在nginx下是不能運行的,在網絡上搜索了相關資料後可經過修改相關配置實現nginx支持PHP的ci框架。php
一、修改ci框架的配置文件 config/config.php
修改$config['uri_protocol']值
改成:css
$config['uri_protocol'] = 'PATH_INFO';
二、修改nginx配置文件,在SERVER段中添加以下代碼:html
location /index.php{ fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_param SCRIPT_FILENAME /home/wwwroot/index.php; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fcgi.conf; }
若是有多個應用,如:後臺應用,能夠多加一段以上代碼,並修改相應入口文件:nginx
location /admin.php{ fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_param SCRIPT_FILENAME /home/wwwroot/admin.php; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fcgi.conf; }
第一次訪問的時候,我是這麼訪問網絡
http://cy.com/index.php/admin框架
我有一個admin 的目錄spa
---------------------------------unix
若是出現了 Access Deniedcode
----------------------------------------------server
請檢查
一、 php.ini(/etc/php5/cgi/php.ini)的配置中這兩項
cgi.fix_pathinfo=1 (這個是本身添加的)