原來在winserver+Apache環境下運作良好的一個微信公眾號後台遷移到阿里雲(環境:Ubuntu 64位| PHP5.4 | Nginx1.6)下卻頻出404,403,只能訪問CI routes.php中設定的預設控制器等問題,後來上網查里下方可能是路由設定問題,幾經折騰最後按下面的設定解決問題。
1、修改網站設定檔
<span>server { 2 listen 80; 3 server_name<span> example.com</span>;//自己的域名 4 5 root <span>/alidata/www/example</span>;//网站目录 6 index index.php index.htm index.html; 7 8 location / { 9 try_files $uri $uri/ /index.php; 10 } 11 12 location /index.php{ 13 fastcgi_pass 127.0.0.1:9000; 14 fastcgi_param SCRIPT_FILENAME <span>/alidata/www/example/index.php</span>; 15 <span> fastcgi_param PATH_INFO $fastcgi_path_info;</span> 16 fastcgi_split_path_info ^(.+\.php)(.*)$; 17 fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; 18 include fastcgi.conf; 19 } 20 21 }</span>
2、修改CI 的config.php 檔案
$config['base_url'] = 'http://example.com/';
$config['uri_protocol'] = 'PATH_INFO';//看起來REQUEST_URI也行
$config['index_page'] = '';
3、網站根目錄以及以下目錄設定讀寫權限(777)
4、重啟nginx
以上就介紹了Nginx下設定codeigniter框架,包含了面向的內容,希望對PHP教學有興趣的朋友有幫助。