[PHP]TP6 CLI模式下创建tp6和多应用配置以及常见问题

363 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

命令行安装稳定版ThinkPHP

composer create-project topthink/think `tp`

tp => 项目的名称.可自定义

创建完成后,配置项目包括但不限于(访问入口,伪静态,端口,域名),保证能正常访问到

安装多应用模式扩展

composer require topthink/think-multi-app

删除 app 目录下的 controller 目录

多应用模式部署后,记得删除app目录下的controller目录(系统根据该目录作为判断是否单应用的依据)

使用命令创建应用

php think build [api]应用名称

访问

http://127.0.0.1/api

安装扩展

composer require topthink/think-view

安装后才能使用View::fetch()

修改应用配置

config/app.php

   // 默认应用
   'default_app'      => 'index',
   // 应用映射(自动多应用模式有效)
   'app_map'          => [],
   // 域名绑定(自动多应用模式有效)
   'domain_bind'      => [],

常见问题

使用View::fetch() 报错 (安装扩展)

  • composer require topthink/think-view

mkdir(): Permission denied

  • 通过 ps -ef |grep php 命令查看php的执行用户是哪一个(一般是www) 在这里插入图片描述
  • chown -R www:www /www/wwwroot/tp6
  • chmod -R g+rw /www/wwwroot/tp6

附加 windows

PHP Warning: mkdir(): Permission denied:解决办法

最近买个了腾讯云服务器(windows server 2012 r2)配置了个iis+php+mysql的网站环境。在上传项目到目录,之后运行图片上传是出现了如上的错误信息。

大概意思是权限不够,首先把php.ini 里面的upload_tmp_dir = 前面的分号去掉,

然后再在你的网站项目下创建一个”tmp“文件夹,然后给该文件夹设置所有权限。

如果还不行,然后打开IIS管理,在左侧菜单里找到你的网站目录,然后点击”tmp“文件夹,然后点击:

然后给全部权限,最后重启iis,最后大功告成!

mac terminal中的代码:(Mac下)

cd Library/webServer/Documents

sudo chmod -R 777 tp5.1

网上都说要改public文件夹的权限为777,但我的文件根本不在public下,而是在application/inde/view/index/index.html。所以我把整个tp5.1的文件夹都改了权限,就可以访问了