thinkphp5 入口文件迁移,项目部署,js引用,验证码刷新路径问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37682202/article/details/82458447

使用thinkphp5框架完成的项目,需要部署在服务器上(项目是直接放在www下面的,并将index.php也迁移出来),为了项目的访问路径高大上一点,需要将域名迁移到根目录下,但入口文件迁移需要注意几个事项,我这开发的时候整个项目是在二级目录下,现在要变成一级目录:

一、入口文件放到根目录下(注意,一定要将.htaccess文件与index.php一起迁移,不然访问会出问题),修改index.php文件如下:

// 定义应用目录
define('APP_PATH', __DIR__ . '/application/');
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';

二、因为引用了js,css等,还需要修改配置文件config.php,其中使用“*”号注释部分是本来在本地配置的路径,mpsq就是项目文件,入口文件修改位置后,要注意改这里:

// 视图输出字符串内容替换
/* 'view_replace_str'       => [
        '__PUBLIC__' => '/mpsq/public',
	'__STYLE__' => '/mpsq/public/style',		
	'__LAYUI__'     => '/mpsq/public/layui',
	'__img__' => '/mpsq/public/upload/image/',
    ],
*/
'view_replace_str'       => [
        '__PUBLIC__' => '/public',
	'__STYLE__' => '/public/style',		
	'__LAYUI__'     => '/public/layui',
	'__img__' => '/public/upload/image/',
 ],

三、入口文件迁移,验证码不显示问题,清除缓存区,平时验证码不显示也可以使用此方法:

//打开:vendor/topthink/think-captcha/CaptchaController.php
public function index($id = "")
{
    ob_clean(); //这个就是添加的清除缓存区
    $captcha = new Captcha((array)Config::get('captcha'));
    return $captcha->entry($id);
}

四、验证码刷新链接修改

<!-- 引入验证码 -->
<img src="{:captcha_src()}" id="verify_img" >&nbsp;&nbsp;<a id="kanbuq" href="javascript:;" >看不清,换一张</a>
//刷新验证码
$("#kanbuq").click(function(){
    var ts = Date.parse(new Date())/1000;
    //本地路径
    //$('#verify_img').attr("src", "/mpsq/public/index.php/captcha?id="+ts);
    //迁移后的路径
    $('#verify_img').attr("src", "/public/index.php/captcha?id="+ts);
});	

   

猜你喜欢

转载自blog.csdn.net/qq_37682202/article/details/82458447
今日推荐