如果网站一切正常,是不需要手动配置以下章节内容的,但你仍需要了解它,当遇到问题时,你需要排查,理解配置项的作用。

app配置

框架的配置文件位于app/config目录,其中app.php、database.php、cache.php需要关注

app.php

return [
    // 应用地址
    'app_host'         => env('app.host', ''),
    // 应用的命名空间
    'app_namespace'    => '',
    // 是否启用路由
    'with_route'       => true,
    // 是否启用事件
    'with_event'       => true,
    // 默认应用
    'default_app'      => 'index',
    // 默认时区
    'default_timezone' => 'Asia/Shanghai',

    // 应用映射(自动多应用模式有效)
	'app_map'	=> [
	],
    // 域名绑定(自动多应用模式有效)
    'domain_bind'	=> [
	],
    // 禁止URL访问的应用列表(自动多应用模式有效)

    // 异常页面的模板文件
    'exception_tmpl' => app()->getThinkPath() . 'tpl/think_exception.tpl',
	
    // 错误显示信息,非调试模式有效
    'error_message'    => '页面错误!请稍后再试~',
    // 显示错误信息
    'show_error_msg'   => false,
	//异常页面模板
	'http_exception_template' => [
		404 => \think\facade\App::getAppPath() . '404.html',
		500 => \think\facade\App::getAppPath() . '404.html',
    ],
];

TIP

以下配置需要重点理解

默认应用

'default_app' => 'index',
  • 默认应用配置,表示访问https://www.aieok.com/,默认访问https://www.aieok.com/index/为index应用的数据

应用映射

'app_map'	=> [
  'article'   => 'index',
  'admin123'  => 'admin'
],
  • 把index应用映射为article,admin映射为admin123
  • 访问https://www.aieok.com/article/ 实际映射到https://www.aieok.com/index/,
  • 设置映射后,原有路径失效,所以访问后台管理需要访问https://www.aieok.com/admin123/

域名绑定

'domain_bind'	=> [
  'www.aieok.com' => 'index',
  'adm.aieok.com' => 'admin'
],
  • 域名绑定后,网址后的应用名不显示
  • 原来访问https://www.aieok.com/index/article/123.html,变为https://www.aieok.com/article/123.html
  • 绑定域名后访问原链接失效

database配置

return [
	// 默认使用的数据库连接配置
    'default'         => env('database.driver', 'mysql'),
    // 自定义时间查询规则
    'time_query_rule' => [],
    // 自动写入时间戳字段
    // true为自动识别类型 false关闭
    // 字符串则明确指定时间字段类型 支持 int timestamp datetime date
    'auto_timestamp'  => true,
    // 时间字段取出后的默认时间格式
    'datetime_format' => 'Y-m-d H:i:s',
    // 数据库连接配置信息
    'connections'     => [
	'mysql' => [
		// 数据库类型
		'type'              => env('database.type', 'mysql'),
		// 服务器地址
		'hostname'          => env('database.hostname', ''),
		// 数据库名
		'database'          => env('database.database', ''),
		// 用户名
		'username'          => env('database.username', ''),
		// 密码
		'password'          => env('database.password', ''),
		// 端口
		'hostport'          => env('database.hostport', ''),
		// 数据库连接参数
		'params'            => [],
		// 数据库编码默认采用utf8
		'charset'           => 'utf8',
		// 数据库表前缀
		'prefix'            => env('database.prefix', 'tao_'),
		// 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
		'deploy'            => 0,
		// 数据库读写是否分离 主从式有效
		'rw_separate'       => false,
		// 读写分离后 主服务器数量
		'master_num'        => 1,
		// 指定从服务器序号
		'slave_no'          => '',
		// 是否严格检查字段是否存在
		'fields_strict'     => true,
		// 是否需要断线重连
		'break_reconnect'   => false,
		// 监听SQL
		'trigger_sql'       => env('app_debug', true),
		// 开启字段缓存
		'fields_cache'      => false,
		// 字段缓存路径
		//'schema_cache_path' => app()->getRuntimePath() . 'schema' . DIRECTORY_SEPARATOR,
		],
		// 更多的数据库配置信息
    ],
];

本系统默认引导程序安装后,会自动把数据配置写入本文件和根目录/.env配置里

cache配置

return [
    // 默认缓存驱动
    'default' => env('cache.driver', 'file'),

    // 缓存连接方式配置
    'stores'  => [
        'file' => [
            // 驱动方式
            'type'       => 'File',
            // 缓存保存目录
            'path'       => '../runtime/cache/',
            // 缓存前缀
            'prefix'     => '',
            // 缓存有效期 0表示永久缓存
            'expire'     => 600,
            // 缓存标签前缀
            'tag_prefix' => 'tag:',
            // 序列化机制 例如 ['serialize', 'unserialize']
            'serialize'  => [],
        ],
        // redis缓存
        'redis'   =>  [
            // 驱动方式
            'type'   => 'redis',
            // 服务器地址
            'host'       => '127.0.0.1',
        ], 
    ],
];
  1. 缓存默认为file类型
  2. 如果需使用redis,需要服务器安装reids,在php扩展中安装redis扩展
  3. 配置redis的host,把default设置为redis即可