配置教程:https://www.thinkcmf.com/topic/351.html
Thinkcmf3:
server {
listen
80;
server_name lh.scapp.nd.com
lh.scapp.nd.com;
root
"D:/phpStudy/WWW/sc_app";
location / {
index
index.html index.htm index.php;
#autoindex
on;
}
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info
^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
fastcgi_param PATH_INFO
$fastcgi_path_info;
fastcgi_param PATH_TRANSLATED
$document_root$fastcgi_path_info;
include
fastcgi_params;
}
}
location / { // …..省略部分代码
if (!-e
$request_filename) {
rewrite
^(.*)$ /index.php?s=$1
last;
break;
}
}
thinkcmf5 :
server{
listen 80;
server_name
lh.rsh.nd.com;
root
"D:/phpStudy/WWW/rsh/public"; #该项要修改为你准备存放相关网页的路径
location / {
index index.php index.html
index.htm;
#如果请求既不是一个文件,也不是一个目录,则执行一下重写规则
if (!-e
$request_filename)
{
#地址作为将参数rewrite到index.php上。
rewrite
^/(.*)$ /index.php/$1;
#若是子目录则使用下面这句,将subdir改成目录名称即可。
#rewrite
^/subdir/(.*)$ /subdir/index.php/$1;
}
}
#proxy the php scripts
to php-fpm
location ~ \.php {
include
fastcgi_params;
##pathinfo支持start
#定义变量
$path_info ,用于存放pathinfo信息
set
$path_info "";
#定义变量
$real_script_name,用于存放真实地址
set
$real_script_name $fastcgi_script_name;
#如果地址与引号内的正则表达式匹配
if
($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
#将文件地址赋值给变量 $real_script_name
set $real_script_name $1;
#将文件地址后的参数赋值给变量 $path_info
set $path_info $2;
}
#配置fastcgi的一些参数
fastcgi_param SCRIPT_FILENAME
$document_root$real_script_name;
fastcgi_param SCRIPT_NAME $real_script_name;
fastcgi_param PATH_INFO $path_info;
###pathinfo支持end
fastcgi_intercept_errors on;
fastcgi_pass
127.0.0.1:9000;
}
location ^~
/data/runtime {
return 404;
}
location ^~ /application
{
return 404;
}
location ^~ /simplewind
{
return 404;
}
}
---------------
官方文件:
# 本文件是nginx的配置文件。
# 根据需要修改下面的域名与目录
# 通常放置在/etc/nginx/conf.d下
server {
listen
80;
#域名设置
server_name
thinkcmf.com;
#项目目录
root
/www/thinkcmf/public;
index index.php;
location / {
if (!-e
$request_filename) {
rewrite
^(.*)$ /index.php?s=$1
last;
break;
}
}
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
include
fastcgi_params;
}
}
---------------------
TP5he TP 3的区别
普通模式:
http://lh.thinkcmf5.nd.com?g=portal&m=page&a=index&id=32
注意:5.0取消了URL模式的概念,并且普通模式的URL访问不再支持,但参数可以支持普通方式传值
PATH_INFO 模式:
http://lh.thinkcmf5.nd.com/portal/page/index/id/32
如果不支持PATHINFO的服务器可以使用兼容模式访问如下:
http://lh.thinkcmf5.nd.com/?s=portal/page/index&id=32
http://lh.thinkcmf5.nd.com/?s=portal/page/index/id/32