Linux下nginx配置codeigniter去掉index.php
原先的系統url中多出一個index.php讓我不爽,靜態化優雅的url才好看,雖然是偽的,其實只需在nginx.conf中加入如下配置:
然后在codeigniter項目的application/config/config.php中的$config['index_page'] = '';即可。然后刷新頁面就可以了。
server {
listen 80;
server_name yourservername;
location / {
root /your/root/path/;
index index.php index.html index.htm;
if (-f $request_filename) {
expires max;
break;
}
#if (!-e $request_filename) {
# rewrite ^/(.*)$ /index.php/$1 last;
#}
if ($request_filename !~ (js|css|images|robots/.txt|index/.php.*) ) {
rewrite ^/(.*)$ /index.php/$1 last;
break;
}
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php($|/) {
root /your/root/path;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_split_path_info ^(.+\.php)(.*)$;
include fastcgi_params;
}
}
listen 80;
server_name yourservername;
location / {
root /your/root/path/;
index index.php index.html index.htm;
if (-f $request_filename) {
expires max;
break;
}
#if (!-e $request_filename) {
# rewrite ^/(.*)$ /index.php/$1 last;
#}
if ($request_filename !~ (js|css|images|robots/.txt|index/.php.*) ) {
rewrite ^/(.*)$ /index.php/$1 last;
break;
}
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php($|/) {
root /your/root/path;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_split_path_info ^(.+\.php)(.*)$;
include fastcgi_params;
}
}
然后在codeigniter項目的application/config/config.php中的$config['index_page'] = '';即可。然后刷新頁面就可以了。
posted on 2012-09-19 10:18 vagasnail 閱讀(2500) 評論(0) 編輯 收藏 所屬分類: 服務器