多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
> 安装时不要开 xdebug 扩展 > public/index.php是项目的入口文件,请配置服务器时把 public 目录做为 web 目录 ## 环境要求 > PHP >= 5.6.0 > PDO > MBstring > CURL ## 本地开发环境要求 > PHP >= 7.0.0 > PDO > MBstring > CURL ## 推荐服务器配置 >PHP >=7.1 >MySQL >=5.6 >CentOS >=6.5 >Nginx ## 下载 ThinkCMF ### 官网下载 https://www.thinkcmf.com/download.html ### composer下载 正式版: ``` composer create-project thinkcmf/thinkcmf:5.1.* thinkcmf5_1 ``` 开发版 ``` composer create-project thinkcmf/thinkcmf:5.1.*-dev thinkcmf51_dev ``` ### github下载 首先下载仓库到本地 ~~~ git clone https://github.com/thinkcmf/thinkcmf thinkcmf5_1 ~~~ 由于5.1还不是默认分支,所以要检出5.1分支 ~~~ git checkout 5.1 ~~~ ### 码云下载 首先下载仓库到本地 ~~~ git clone https://gitee.com/thinkcmf/ThinkCMF thinkcmf5_1 ~~~ 由于5.1还不是默认分支,所以要检出5.1分支 ~~~ git checkout 5.1 ~~~ ## nginx配置参考 ``` server{ listen 80; server_name demo.thinkcmf.com; root 你的 ThinkCMF5.1目录/public; # 该项要修改为你准备存放相关网页的路径 location / { index index.php index.html index.htm; #如果请求既不是一个文件,也不是一个目录,则执行一下重写规则 if (!-e $request_filename) { #地址作为将参数rewrite到index.php上。 rewrite ^/(.*)$ /index.php?s=$1; #若是子目录则使用下面这句,将subdir改成目录名称即可。 #rewrite ^/subdir/(.*)$ /subdir/index.php?s=$1; } } location /api/ { index index.php index.html index.htm; #如果请求既不是一个文件,也不是一个目录,则执行一下重写规则 if (!-e $request_filename) { #若是子目录则使用下面这句,将subdir改成目录名称即可。 rewrite ^/api/(.*)$ /api.php?s=$1; } } location ~* ^\/upload\/.+\.(html|php)$ { return 404; } location ~* ^\/plugins\/.+\.(html|php)$ { return 404; } location ~* ^\/themes\/.+\.(html|php)$ { return 404; } #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; # fastcgi_pass 如果是 sock形式,可能是下面的配置 # fastcgi_pass unix:/tmp/php-cgi.sock } } ``` ## 虚拟机配置参考 [https://www.kancloud.cn/thinkcmf/faq/1197179](https://www.kancloud.cn/thinkcmf/faq/1197179) ## 站群部署参考 [https://www.kancloud.cn/thinkcmf/faq/1200991](https://www.kancloud.cn/thinkcmf/faq/1200991)