lnmp 에서 codeigniter 설정

해결 됨
/ index. php / abc 라 는 url 에 대해 아파 치 와 Lighttpd 는 "index. php? abc" 를 누 르 고 nginx 는 이름 을 구 하 는 것 이 라 고 생각 합 니 다.
 
글 자 는 "index. php" 디 렉 터 리 에 있 는 abc 파일 의 내용 입 니 다.그래서 CI 는 nginx 에서 rewrite 를 설정 하지 않 으 면 실행 할 수 없고 아파 치 에 서 는 실행 할 수 없습니다.
 
Lighttpd 와 는 정상 입 니 다.
Nginx 에 rewrite ^ / (. *) $/ index. php? $1 last;rewrite 요청 을 하 러 왔 을 때: / abc. abc 와 같은 요청 은
 
rewrite 는 "index. php / abc abc", 즉 "점" 을 "밑줄" 로 바 꿉 니 다. 왜 그런 지 모 르 겠 습 니 다.
 
Nginx 프로필 의 rewrite 규칙 은 한 번 만 실행 하면 끝 나 는 것 이 아니 라 "한 번 실행 합 니 다. break 에 닿 지 않 으 면 누 르 십시오."
 
rewrite 후 새로운 경 로 를 다시 한 번 실행 합 니 다. 더 이상 변 하지 않 거나 break 를 만 나 거나 10 회 이상 500 오 류 를 보고 할 때 까지 실행 합 니 다. 그래서 단순 합 니 다.   
 
의 작은 지식 2 리 의 재 작성 규칙 으로 는 안 됩 니 다. 뒤에 break 한 마디 를 더 해 야 합 니 다. 이렇게 다시 한 번 쓴 후에 다시 실행 하지 않 습 니 다.
 그 중에서 firebox bug 는 codeignite 가 있 는 하위 디 렉 터 리 를 말 합 니 다.
location /firefoxbug/                
{
index index.php;
if (!-e $request_filename) {
rewrite ^/(.*)$ /firefoxbug/index.php?$1 last;
break;
}
}
분할선
ci 의사 정적 간단하게 기록 해 주세요.
우선 nginx 오픈 path 를 설정 해 야 합 니 다.info (이 점 을 오래 고민 하 였 습 니 다. 인터넷 방법 에 따라 설정 이 정확 하지 않 았 습 니 다. 결국 lnmp 기본 값 이 path info 를 열 었 음 을 알 게 되 었 습 니 다)
의사 정적 규칙:
if ($request_uri ~* ^/system)
{
 rewrite ^/(.*)$ /index.php?/$1 last;
 break;
}

if (!-e $request_filename)
{
 rewrite ^/(.*)$ /index.php?/$1 last;
 break;
}
자료: codeigniter - nginx - rewrite - rules nginx rewrite 의사 정적 설정 파라미터 상세 설명 (회전)



CI Nginx , 404 。 ,CI apache ,CI path_info ,Nginx path_info。
, 。

, :
server
{

listen 80;
server_name localhost;
index index.php;
root /home/wwwroot; #

location ~ .*.php($|/)
{
root /home/wwwroot; #
fastcgi_param SCRIPT_FILENAME /home/wwwroot$fastcgi_script_name;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
include fastcgi_params;
fastcgi_pass unix:/tmp/php-fcgi.sock;
fastcgi_index index.php;
}

php.ini(/usr/local/php/etc/php.ini) ( , No input file specified )
:cgi.fix_pathinfo
1:
cgi.fix_pathinfo=1

Nginx 。
”.”, 404 。( , )

http://cc.ecjtu.net/posts/ci-nginx-404

http://down.chinaz.com/server/201111/1358_1.htm

http://codeigniter.org.cn/forums/thread-1465-1-1.html

http://wesoho.blog.51cto.com/715082/200689



nginx No input file specified,
 
1、 php.ini(/etc/php5/cgi/php.ini)
cgi.fix_pathinfo=1  ( )



좋은 웹페이지 즐겨찾기