1.本地测试正常,上传到服务器提示找不到模块?

请确认服务器是否开启PATH_INFO,如果未开启,请先开启。
如果您的服务器不支持PATH_INFO,那请使用兼容模式访问。如:
?s=/模块/控制器/操作/[参数名/参数值...]

详细请查阅ThinkPHP文档

2.后台默认账号密码?

安装完后,后台登录地址为:
http://你的网址/admin.php/admin

1.0.0正式版之后,可以直接访问
http://你的网址/admin.phphttp://你的网址/index.php/admin

默认账号:admin
默认密码:admin

请及时修改管理员密码,以免被不怀好意的人利用。

3.本地开发,mysql没有密码如何安装?

框架的安装程序默认会检查是否填写mysql密码,如果您本地开发时,mysql没有设置密码,那么安装前,请打开文件:
application\install\controller\Index.php
大概126行,将下图红框的那行代码注释掉,然后再安装。

提示:从1.0.2版本开始,已经默认不检查是否设置了mysql密码

4.开发模块的时候,好多菜单节点需要添加,好累啊,咋办?

温馨提示:在模块开发阶段,无需手动编写menu.php文件,需要什么节点直接在“节点管理”添加即可。等模块开发好了,在“模块管理”导出对应模块,系统会自动生成菜单文件,就是这么简单粗暴。

5.图片、文件上传失败,怎么办?

首先,先检查PHP是否安装了fileinfo扩展,此功能需要fileinfo扩展支持才能用。
其次,检查public\uploads目录是否有相应权限。
再次,请检测php.ini的post_max_sizeupload_max_filesize是否设置得足够大。
最后,查看该用户角色是否分配了“文件上传”权限

6.在lnmp环境下,首页显示空白?

请查看php.ini中的disable_functions是否禁用了scandir函数。如果是,请删除scandir,然后重启php服务。

检查目录是否可写,扩展是否安装。

7.如何开启fileinfo扩展?

不同的服务器套件有不同的开启方法,下面介绍几种:
1.phpstudy

如果在Windows下用phpstudy套件,那么开启fileinfo很简单。

2.自己安装的lnmp环境

进入php源码中的fileinfo目录,不同的版本,路径会有所不同,请根据实际情况,找到对应的目录。

cd /home/ming/lnmp1.3-full/src/php-7.0.7/ext/fileinfo/

执行phpize命令

注意,该命令一定要在上面说到的fileinfo目录下执行

/usr/local/php/bin/phpize

如果执行成功,会有类似下面的信息

Configuring for:
PHP Api Version:         20151012
Zend Module Api No:      20151012
Zend Extension Api No:   320151012

配置php-config路径,以自己服务器的实际路径为准

./configure --with-php-config=/usr/local/php/bin/php-config

编译安装

make && make install

如果安装成功,会有类似下面的信息

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/

修改php.ini,在后面加入

extension = fileinfo.so;

最后重启php服务即可。

8.如何开启pathinfo支持?

本框架需要服务器支持pathinfo,所以如果没有开启pathinfo,需要自行开启。

[Apache]

如果是在Windows下用phpstudy架设的,设置很简单,只需启用rewrite模块即可。

如果还是访问出错,可以尝试以下操作。
打开.htaccess
将规则改为如下:

<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On

  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php?s=/$1 [QSA,PT,L]
</IfModule>

[Nginx]

在Nginx.conf配置中,添加

location ~ [^/]\.php(/|$)
{
    fastcgi_pass  unix:/tmp/php-cgi.sock;
    fastcgi_index index.php;
    fastcgi_split_path_info ^(.+\.php)(.*)$;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    include fastcgi.conf;
    include pathinfo.conf;
}

在Nginx低版本中,是不支持PATHINFO的,但是可以通过在Nginx.conf中配置转发规则实现。

location / {
    if (!-e $request_filename) {
        rewrite  ^(.*)$  /index.php?s=/$1  last;
        break;
    }
}

一个完整示例,请根据自己服务器加以修改

server {
        listen       80;
        server_name  www.dolphinphp.com *.dolphinphp.com;
        root   "/home/www/wwwroot/dolphinphp";
        location / {
            index  index.html index.htm index.php;
            	#主要是这一段一定要确保存在
                if (!-e $request_filename) {
                    rewrite  ^(.*)$  /index.php?s=$1  last;
                    break;
                }
                #结束
            #autoindex  on;
        }
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^(.+\.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;
        }
}

以下是网友分享的一段参考配置

server {
	listen       80;
	server_name  admin5.cn;
	
	location / {
		root   d:/wamp64/www/git/admin5;
		index  index.html index.htm index.php;
		
		try_files $uri  @rewrite;
		location ~ \.php$ {
			try_files $uri =404;
			fastcgi_pass   127.0.0.1:9000;
			fastcgi_index  index.php;
			fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
			include        fastcgi_params;
		}
	}
	
	location ~ /.svn/ {
		deny all;
	}
	# 重写规则
	location @rewrite {
		#如果有admin.php 文件,重写
		rewrite ^/admin.php(.*)$ /admin.php?s=$1 last;
		#如果有 index.php 文件 ,重写
		rewrite ^/index.php(.*)$ /index.php?s=$1 last; 
		#重写到 index.php 
		rewrite . /index.php?s=$uri last;
	}
	#error_page  404              /404.html;
	# redirect server error pages to the static page /50x.html
	#
	
	error_page   500 502 503 504  /50x.html;
	location = /50x.html {
		root   html;
	}
	location ~ /\.(svn|git) {
		deny all;
	}
}

如果使用了宝塔面板,在站点管理-设置中,伪静态选择“thinkphp”即可

9.后台页面响应时间过长?

全新安装框架,打开后台,页面响应过长,要好几秒才能完全加载页面?

如果遇到这样的问题,请尝试将数据库配置文件:\application\database.php中的

'hostname'        => 'localhost'

改为

'hostname'        => '127.0.0.1'

10.ueditor编辑器无法插入通用代码

有时候需要在编辑器中插入视频通用代码,比如腾讯视屏的通用代码。一般是以“iframe”标签的方式插入的。

百度编辑器本身是禁止插入“iframe”的,因为有可能造成xss攻击。

如果您已经足够了解什么是xss攻击,以及确定要使用“iframe”标签,那么可以按以下方式解决。

打开\public\static\libs\ueditor\ueditor.config.js,搜索“whitList”,在“whitList”内添加以下代码。

iframe: ['frameborder', 'src', 'width', 'height'],