我爱学习网首页 | 设为首页 | 收藏本站 | 网站地图 您好,欢迎光临我爱学习网
我爱学习网

当前位置:首页 > 编程开发 > php > ThinkPHP框架 >

thinkcmf 5.0部署在西部数码云虚拟主机的方法

时间:2020-01-15 20:59 来源:未知 | 作者:我爱学习网 | 本文已影响
关于ThinkCMF 5.0在虚拟主机上部署的方法,网上找了很多办法都没能解决,经过不断的尝试终于成功部署。环境为西部数码云虚拟主机,linux系统。
原空间目录结构为:
logs
others
wwwroot

我们在上述目录创建同级目录:thinkcmf
最终目录结构为:

logs
others
wwwroot
thinkcmf

将下载的thinkcmf压缩包上传解压至目录thinkcmf,然后将public目录下的文件全部移动到wwwroot站点根目录中。至止目录结构已完成。接下来需要修改两个文件。
1、修改wwwroot目录下的index.php文件,
将代码:

// 定义CMF根目录,可更改此目录
define('CMF_ROOT', dirname(__DIR__) . '/');

改为:

// 定义CMF根目录,可更改此目录
define('CMF_ROOT', __DIR__ . '/../thinkcmf/');

2、修改所创建的thinkcmf目录下,vendor/thinkphp/library/think/Loader.php文件,找到代码
// 获取应用根目录
    public static function getRootPath()
    {
        if ('cli' == PHP_SAPI) {
            $scriptName = realpath($_SERVER['argv'][0]);
        } else {
            $scriptName = $_SERVER['SCRIPT_FILENAME'];
        }

        $path = realpath(dirname($scriptName));

        if (!is_file($path . DIRECTORY_SEPARATOR . 'think')) {
            $path = dirname($path);
        }

        return $path . DIRECTORY_SEPARATOR;
    }

修改为:

// 获取应用根目录
    public static function getRootPath()
    {
		return CMF_ROOT;//这里是新加的代码
        if ('cli' == PHP_SAPI) {
            $scriptName = realpath($_SERVER['argv'][0]);
        } else {
            $scriptName = $_SERVER['SCRIPT_FILENAME'];
        }

        $path = realpath(dirname($scriptName));

        if (!is_file($path . DIRECTORY_SEPARATOR . 'think')) {
            $path = dirname($path);
        }

        return $path . DIRECTORY_SEPARATOR;
    }

至此大功告成。

(责任编辑:我爱学习网)

更多技巧文章请关注公众号:huixiang_360

分享到: 更多

收藏此页】 【

我要纠错】 【打印此页