- 🏠 简介
- 📥 源码下载
- 🚀 安装指南
- 🔧 niucloud (服务端)
- 🖥️ admin (后台管理端)
- 📱 uni-app(手机端前端)
- 🌐 web端(PC前端)
- ⚙️ 代码生成器
- ⚙️ 配置手册
- 📚 使用手册
- 🔄 版本更新
-
❓ 常见问题
- 服务器问题
- 安装问题
- 使用问题
- 版本问题
-
其他问题
- 怎么添加菜单,添加了菜单不出现怎么回事
- 站点site端(租户端、商家端)和saas管理端(平台端)究竟啥意思,有啥区别
- 框架中是有订单表order,假如开发一个商城插件,请问商城的订单数据是不是重新搞一个订单表shop_order
- 有些支付平台是绑定回调唯一网址或目录,如果有几个开发者开发插件都有支付那这块怎么解决?
- 站点过期,可以登录,这样对吗?
- 计划任务怎么启动啊
- Git多分支开发,切换分支
- 安装应用出现is_dir()报错处理方案
- 绑定授权时出现“请求来源产品与授权产品不一致”解决方案
- “未找到admin源码所在目录”的解决方案
- 页面装修本地开发环境配置
- 接口请求错误处理方案
- 未获取到授权信息问题处理方案
- 腾讯地图配置
- 请求超时问题处理方案
- 下载应用时提示找不到zip解决方案
- 怎么关闭开发调试模式
- 获取数据失败问题处理方案
- 框架安装后,访问域名无法进入admin端(多数发生在本地)
- 底部导航失效问题
- 开放平台小程序审核通过发布失败问题
- 先升级插件后升级框架,导致云编译报debounce的错误
- 微信公众号自动回复不通
- 如何修改访问域名默认跳转端口
- 插件与框架的版本兼容问题处理方案
- 升级提示mkdir()处理方案
- 云编译时node.js内存不足导致内存溢出处理方案
- 报错Allowed memory size of ** bytes exhausted (tried to allocate ** bytes)处理方法
- Mysql修改sql_mode模式
- 框架1.0.2之前升级最新版错误Undefined array key "content"
- 安装插件提示不适配框架版本的处理
入口文件
入口文件概述
ThinkPHP8.0采用单一入口模式进行项目部署和访问,一个应用都有一个统一(但不一定是唯一)的入口。如果采用自动多应用部署的话,一个入口文件还可以自动对应多个应用。
应用入口文件(Web访问入口)
入口文件位置
默认的应用入口文件位于:niucloud/public/index.php,默认内容如下:
// [ 应用入口文件 ]
namespace think;
if (PHP_VERSION_ID < 80000)
die('require PHP > 8.0.0 !');
require __DIR__ . '/../vendor/autoload.php';
if (!file_exists(__DIR__ .'/../install.lock')) {
header("location:/install.php");
exit;
}
// 执行HTTP应用并响应
$http = (new App())->http;
$response = $http->run();
$response->send();
$http->end($response);
安全设计理念
遵循ThinkPHP的安全部署建议:public目录作为唯一Web可访问目录。
如果你没有特殊的自定义需求,无需对入口文件做任何的更改。
控制台入口文件(命令行工具)
除了Web访问入口外,系统还提供了控制台入口文件,用于执行命令行操作。
1. 控制台入口文件位置
控制台入口文件位于项目根目录,文件名为think(无文件后缀):
niucloud/think
2. 控制台入口文件内容
控制台入口文件的典型内容如下:
#!/usr/bin/env php
<?php
namespace think;
// 加载基础文件
require __DIR__ . '/vendor/autoload.php';
// 应用初始化
(new App())->console->run();
3. 控制台命令使用方法
通过控制台入口文件,可以执行系统内置的各种命令,例如:
php think version # 查看框架版本
php think route # 查看路由列表
php think make:controller # 创建控制器
php think optimize:autoload # 优化自动加载文件
系统内置了一些常用的控制台指令,如果你安装了额外的扩展,也会增加相应的控制台指令,都是通过该入口文件执行的。