支持虚拟机


如何在虚拟机部署 ThinkCMF5 ?

在 public/index.php 文件中有个常量CMF_ROOT;

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

这个常量定义了 ThinkCMF根目录的地址,public目录是个例外,它是程序的 web 根目录,也就说这个目录可以随意调整,对有自己服务器的同学,可以直接把 public 目录当网站根目录,但对于虚拟机可能无法直接把 public 当网站根目录。

今天我们来说一下怎么在虚拟机部署 ThinkCMF5 ?

一般空间目录结构基本是这样:

wwwroot(或 www)logs
data
...

这时thinkcmf 默认的结构并不适用空间目录结构,因为空间的网站根目录是 wwwroot 或 www,这时我们就要对默认的 cmf 进行改造了,其实很简单。

我们可以 thinkcmf 放到 wwwroot 之外,比如放在空间根目录的 thinkcmf 目录里

wwwroot(或 www)
logsdata...thinkcmf
    app    data
    public
        index.php        ...
    simplewind    ...

然后把 public 目录的所有文件都移动到 wwwroot 目录下

wwwroot(或 www)
    static
    upload
    index.php    ...logsdata...thinkcmf
    app    data
    public
    simplewind    ...

这时我们再改一下 index.php

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

下在完整 index.php 下如:

// [ 入口文件 ]

// 调试模式开关
define("APP_DEBUG", true);

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

// 定义应用目录
define('APP_PATH', CMF_ROOT . 'app/');

// 定义CMF核心包目录
define('CMF_PATH', CMF_ROOT . 'simplewind/cmf/');

// 定义插件目录
define('PLUGINS_PATH', __DIR__ . '/plugins/');

// 定义扩展目录
define('EXTEND_PATH', CMF_ROOT . 'simplewind/extend/');
define('VENDOR_PATH', CMF_ROOT . 'simplewind/vendor/');

// 定义应用的运行时目录
define('RUNTIME_PATH', CMF_ROOT . 'data/runtime/');

// 定义CMF 版本号
define('THINKCMF_VERSION', '5.0.170808');

// 加载框架基础文件
require CMF_ROOT . 'simplewind/thinkphp/base.php';

// 执行应用
\think\App::run()->send();



虚拟机部署 ThinkCMF5 讲解完毕!


来源: up61技术博客 欢迎分享 (QQ:529857614)

qq交流群:63739043 up61博客-php交流群

上一篇: 迁移到正式环境
下一篇: 忘记后台密码