1.TP6的入门-安装
打开官网,找到这里点击手册

或者直接访问 这里
可以看到TP6已经有了赞助商

然后往后面阅读,发现他推荐我们读这个

这个入门必读还是不错的,简单的看看就行
后面就开始安装吧
首先注意自己的环境php版本以及composer是否已经安装配置了

后面有这个提示说composer太慢可以这样配置,我觉得华为云的挺好的,我们就采用这个
composer config -g repo.packagist composer https://repo.huaweicloud.com/repository/php/
然后就是初步安装
composer create-project topthink/think tp6
这个tp6就是你要存储的代码的文件夹,这里你可以随便改,之后就创建了我们的项目代码了.
执行过程
Creating a "topthink/think" project at "./tp6"
Installing topthink/think (v6.0.13)
- Installing topthink/think (v6.0.13): Loading from cache
Created project in /home/zhaoyao/script/php/tp/tp6
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 16 installs, 0 updates, 0 removals
- Installing topthink/think-helper (v3.1.6): Loading from cache
- Installing psr/log (1.1.4): Loading from cache
- Installing psr/simple-cache (1.0.1): Loading from cache
- Installing topthink/think-orm (v2.0.54): Loading from cache
- Installing symfony/polyfill-php80 (v1.26.0): Loading from cache
- Installing symfony/polyfill-php72 (v1.26.0): Loading from cache
- Installing symfony/polyfill-mbstring (v1.26.0): Loading from cache
- Installing symfony/var-dumper (v4.4.44): Loading from cache
- Installing psr/container (1.1.2): Loading from cache
- Installing psr/cache (1.0.1): Loading from cache
- Installing league/mime-type-detection (1.11.0): Loading from cache
- Installing league/flysystem (1.1.9): Loading from cache
- Installing league/flysystem-cached-adapter (1.1.0): Loading from cache
- Installing psr/http-message (1.0.1): Loading from cache
- Installing topthink/framework (v6.0.13): Loading from cache
- Installing topthink/think-trace (v1.4): Loading from cache
symfony/var-dumper suggests installing ext-intl (To show region name in time zone dump)
symfony/var-dumper suggests installing symfony/console (To use the ServerDumpCommand and/or the bin/var-dump-server script)
league/flysystem suggests installing league/flysystem-eventable-filesystem (Allows you to use EventableFilesystem)
league/flysystem suggests installing league/flysystem-rackspace (Allows you to use Rackspace Cloud Files)
league/flysystem suggests installing league/flysystem-azure (Allows you to use Windows Azure Blob storage)
league/flysystem suggests installing league/flysystem-webdav (Allows you to use WebDAV storage)
league/flysystem suggests installing league/flysystem-aws-s3-v2 (Allows you to use S3 storage with AWS SDK v2)
league/flysystem suggests installing league/flysystem-aws-s3-v3 (Allows you to use S3 storage with AWS SDK v3)
league/flysystem suggests installing spatie/flysystem-dropbox (Allows you to use Dropbox storage)
league/flysystem suggests installing srmklive/flysystem-dropbox-v2 (Allows you to use Dropbox storage for PHP 5 applications)
league/flysystem suggests installing league/flysystem-sftp (Allows you to use SFTP server storage via phpseclib)
league/flysystem suggests installing league/flysystem-ziparchive (Allows you to use ZipArchive adapter)
league/flysystem-cached-adapter suggests installing ext-phpredis (Pure C implemented extension for PHP)
Writing lock file
Generating autoload files
> @php think service:discover
Succeed!
> @php think vendor:publish
Succeed!
6 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
然后进入tp6文件夹
cd tp6
进行列表查看 ls -l
total 80
drwxrwxr-x 3 zhaoyao zhaoyao 4096 5月 31 12:54 app/
-rw-rw-r-- 1 zhaoyao zhaoyao 1099 5月 31 12:54 composer.json
-rw-rw-r-- 1 zhaoyao zhaoyao 32490 8月 8 09:52 composer.lock
drwxrwxr-x 2 zhaoyao zhaoyao 4096 8月 8 09:52 config/
drwxrwxr-x 2 zhaoyao zhaoyao 4096 5月 31 12:54 extend/
-rw-rw-r-- 1 zhaoyao zhaoyao 1822 5月 31 12:54 LICENSE.txt
drwxrwxr-x 3 zhaoyao zhaoyao 4096 5月 31 12:54 public/
-rw-rw-r-- 1 zhaoyao zhaoyao 1459 5月 31 12:54 README.md
drwxrwxr-x 2 zhaoyao zhaoyao 4096 5月 31 12:54 route/
drwxrwxr-x 2 zhaoyao zhaoyao 4096 5月 31 12:54 runtime/
-rw-rw-r-- 1 zhaoyao zhaoyao 180 5月 31 12:54 think
drwxrwxr-x 8 zhaoyao zhaoyao 4096 8月 8 09:52 vendor/
drwxrwxr-x 2 zhaoyao zhaoyao 4096 5月 31 12:54 view/
好了,代码已经好了,你可以选择直接将站点部署到 public/ 目录下,也可以选择直接
php think run
然后就跑起来了 访问 http://127.0.0.1:8000/ 即可.

后续思考:
我们使用命令行方式运行起这个站点,等于让php做了web server服务器,那么这个终端就要一直运行挂着,不能中断,不然ctrl+c就把服务断了.
使用命令行运行,那些代码就等于在用命令行执行的身份在跑,那权限和身份是不是会有变化呢?普通的apache/nginx的权限跑的代码是没有那么高的权限的,现在用命令行跑,肯定权限高了不少,到时候又该如何防止权限泛滥呢?
正因为权限提高了,我们是不是可以做一些权限的事情呢?比如利用这个做一个svn代码拉取工具,执行svn up,同理git,进行git pull 命令,拉取代码,就相当与我们只要页面上面点击一下就能实现服务器上面的代码拉取自动更新了.
命令行这样执行和直接php fpm这样执行效率上面有什么差异吗?代码需要每次都重新加载吗?fpm的压力是否会减小?服务器是否可以减小CPU消耗呢?
1.TP6的入门-安装的更多相关文章
- Debian 入门安装与配置2
Debian 入门安装与配置2 1. C/C++开发必装软件 atp-get install gcc 这个不用说,用来编译C程序 apt-get install g++ 用来编译C++程序 ap ...
- Debian 入门安装与配置1
Debian 入门安装与配置1 最近安装了多个发行版本的Linux,包括Ubuntu.Fedora.Centos和Debian,发现只有Debian在界面和稳定性等综合特性上表现最优,自己也最喜欢,所 ...
- Activity工作流(2)-入门安装运行第一个例子
转: Activity工作流(2)-入门安装运行第一个例子 置顶 2017年05月24日 15:58:50 li_ch_ch 阅读数:24432 版权声明:本文为博主原创文章,未经博主允许不得转载 ...
- elk系列1之入门安装与基本操作【转】
preface 我们每天都要查看服务器的日志,一方面是为了开发的同事翻找日志,另一方面是巡检服务器查看日志,而随着服务器数量以及越来越多的业务上线,日志越来越多,人肉运维相当痛苦了,此时,参考现在非常 ...
- react入门安装
react的入门安装 1.react的适用方法有两种,其一是依赖在线的cdn地址: https://reactjs.org/docs/cdn-links.html 官方给的cdn地址如下 <sc ...
- Redis介绍及入门安装及使用
Redis介绍及入门安装及使用 什么是Redis Redis is an open source (BSD licensed), in-memory data structure store, use ...
- JAVA手记 JAVA入门(安装+Dos下运行)
JAVA入门特供= =,今天设置环境变量后用dos运行的时候发现出现“找不到或无法加载主类”,索性查了些资料重新看了看JAVA入门的部分. 声明:我的笔记本暂时用的是Win10系统,Windows其他 ...
- zookeeper windows 入门安装和测试
一.序言 以下是我对zookeeper 的一些理解: zookeeper 作为一个服务注册信息存储的管理工具,好吧,这样说得很抽象,我们举个“栗子”. 栗子1号: 假设我是一家 ...
- [译]:Orchard入门——安装Orchard
原文链接:Installing Orchard 文章内容基于Orchard 1.8版本 安装Orchard的方式 主要有以下四种方式安装Orchard: 利用Microsoft Web Platfor ...
- Kafka入门 --安装和简单实用
一.安装Zookeeper 参考: Zookeeper的下载.安装和启动 Zookeeper 集群搭建--单机伪分布式集群 二.下载Kafka 进入http://kafka.apache.org/do ...
随机推荐
- 如何选择 Linux 发行版
简介 要建立云服务器,首先需要安装操作系统.在现代环境中,几乎所有情况下都是指 Linux 操作系统.从历史上看,Windows 服务器和其他类型的 Unix 在特定的商业环境中都很流行,但现在几乎每 ...
- NET Core 多身份校验与策略模式
背景需求: 系统需要对接到XXX官方的API,但因此官方对接以及管理都十分严格.而本人部门的系统中包含诸多子系统,系统间为了稳定,程序间多数固定Token+特殊验证进行调用,且后期还要提供给其他兄 ...
- 理解async 和 await
await 后面接的是promise,await语句下面(注意:不是await后面,而是await所在语句的下面,即下行以后)的代码就相当在promise.then()里面执行,有文章说 await后 ...
- java-GUI编程之布局类型介绍
java使用AWT和Swing相关的类可以完成图形化界面编程,其中AWT的全称是抽象窗口工具集(Abstract Window Toolkit),它是sun公司最早提供的GUI库,这个GUI库提供了一 ...
- Git使用经验总结6-删除远端历史记录
删除远端的历史记录但是不影响最新的仓库内容是笔者一直想实现的功能,有两个很不错的用处: 有的历史提交不慎包含了比较敏感的信息,提交的时候没注意,过了一段时间才发现.这个时候已经有了很多新的历史提交,无 ...
- 鸿蒙(HarmonyOS)实现隐私政策弹窗
在实现用户协议弹窗时,通常我们会想到使用系统自定义弹窗,并在弹窗中点击跳转到Web页面.但在HarmonyOS中,由于系统弹窗的显示优先级高于其他组件,即使跳转到Web页面,弹窗依然会显示在最上层. ...
- CSIG青年科学家会议圆满举行,合合信息打造智能文档处理融合研究新范式
近期,第十九届中国图象图形学学会青年科学家会议(简称"会议")在广州召开.会议由中国图象图形学学会(CSIG)主办,琶洲实验室.华南理工大学.中山大学.中国图象图形学学 ...
- SpringMVC —— 日期类型参数传递
日期类型参数传递 相关注解 类型转换器
- CSP-J 2024游记
CSP-J 2024游记 题目难度 总体来说,这次考试题目对于我这个初一牲难度不高.前面的选择题出现了少量难题(格蕾码). 选择题 选择题出现了一个搞人心态的BYD题目--格蕾码.这道题我蒙的, 阅读 ...
- modbus基础
Modbus是一种单主站的主从通信模式,Modbus只能有一个主站,允许多个从站(0-247):从站之间不能交流:主站发送数据,从站应答: 一主多从 : 1. 地址码,表,功能码 地址码一般是Modb ...