由于項目遷移,不得不在Nginx下配置codeigniter框架,開始怎么配置都不成功,經過度娘以及眾網友的熱心幫忙,終于完成了正確的設置,這里分享給大家,有需要的小伙伴參考下.
原來在winserver+Apache環境下工作良好的一個微信公眾號后臺遷移到阿里云(環境:Ubuntu 64位 | PHP5.4 | Nginx1.6)下卻頻出 404,403,只能訪問CI routes.php中設置的默認控制器等問題,后來上網查里下可能是路由設置問題,幾經折騰最后按下面的設置解決問題。
1、修改網站配置文件,代碼如下:
- server {
- listen 80;
- server_name example.com;//自己的域名
- root /alidata/www/example;//網站目錄
- index index.php index.htm index.html;
- location / {
- try_files $uri $uri/ /index.php;
- }
- location /index.php{
- fastcgi_pass 127.0.0.1:9000;
- fastcgi_param SCRIPT_FILENAME /alidata/www/example/index.php;
- fastcgi_param PATH_INFO $fastcgi_path_info;
- fastcgi_split_path_info ^(.+/.php)(.*)$;
- fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
- include fastcgi.conf;
- }
- }
2、修改CI 的config.php 文件,代碼如下:
- $config['base_url'] = 'http://example.com/';
- $config['uri_protocol'] = 'PATH_INFO';//貌似REQUEST_URI也行
- $config['index_page'] = '';
3、網站根目錄以及以下目錄設置讀寫權限(777)
4、重啟nginx
新聞熱點
疑難解答