원래 winserver+Apache 환경에서 잘 작동하던 WeChat 공개 계정이 Alibaba Cloud(환경: Ubuntu 64-bit | PHP5.4 | Nginx1.6)로 마이그레이션되었으나 404, 403을 자주 받아 CI만 접속할 수 있었습니다. .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 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.