nginx下部署php項目出現404錯誤

出現問題以後就開始了在網上找答案的漫漫之旅。。。。
php

最終花了一天時間終於把問題搞好了,這裏謝謝這位朋友提供的信息:http://www.qttc.net/201208199.htmlhtml

下面來講說致使的緣由和解決方案,也給本身作個筆記。java

緣由:nginx

    nginx 默認不支持pathinfo模式。沒有開啓pathinfo模式的話,nginx會把weisl.vipslb.com/index.php/api/...中的index.php當成目錄來訪問,因此會出現404錯誤。
api

解決方案:spa

    下面這段代碼拷貝到你的項目配置文件下,如:個人是/etc/nginx/conf.d/weisl.conf..net

location / {         
 if (!-e $request_filename) {     
     rewrite  ^/(.*)$ /index .php/$1  last;                 
     break ;     
 } 
} 

location ~ \.php {    
 fastcgi_pass 127.0.0.1:9000; 
 fastcgi_index index.php; 
 include fastcgi.conf; 
 set $real_script_name $fastcgi_script_name;
 if($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {  
     set $real_script_name $1;         
     set $path_info $2;   
 }   
 fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;  
 fastcgi_param SCRIPT_NAME $real_script_name;    
 fastcgi_param PATH_INFO $path_info; 
}

    注意:這些能夠不用註釋code

最後保存退出,重啓nginx。htm

訪問就正常了.....ip

相關文章
相關標籤/搜索