suchen
HeimPHP-FrameworkDenken Sie an PHPThinkPHP erstellt zunächst einen API-Dienst (detaillierte Schritte)

本篇文章整理了ThinkPHP6从头开始部署的详细操作步骤,希望能够帮助大家节省探索的时间,对大家有帮助。

ThinkPHP erstellt zunächst einen API-Dienst (detaillierte Schritte)1 下载Composer

Composer是 PHP 用来管理依赖(dependency)关系的工具。

1.1 windows版本

下载地址:getcomposer.org/

如果报错:

Program Output: 
PHP Deprecated:  Directive 'track_errors' is deprecated in Unknown on line 0

则修改php.ini:

;track_errors = On (On改为Off) 
track_errors = Off

重启HTTP服务后,安装通过。

1.2 macOS版本

执行:

curl -sS https://getcomposer.org/installer | php

如果报错以下信息,或者迟迟下载不完:

Failed to decode zlib stream

就直接去官网(getcomposer.org/download/)下载最新版的composer.phar

下载后,在存放composer.phar的目录下执行:

mv composer.phar /usr/local/bin/composer

然后就可以全局使用composer了,执行以下命令查看版本号:

composer -v

2 安装/升级ThinkPHP6

执行以下命令,切换为阿里云镜像加速下载:

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

选好目录,执行:

composer create-project topthink/think projectName

安装好后,进入项目目录,执行:

php think run

浏览器访问:

http://localhost:8000/

如果改变端口,则执行:

php think run -p 80

升级ThinkPHP6,进入项目根目录,执行:

composer update

实际部署中,应该是绑定域名访问到public目录,确保其它目录不在WEB目录下面。

3 配置调试模式

根目录下的.example.env重命名为.env,设置以下代码:

APP_DEBUG = true

4 多应用部署

目录结构

/www  WEB部署目录(或者子目录) 
├─ /app                  应用目录 
│  ├─ /myApp             子应用目录 
│  │  ├─common.php       子应用函数文件 
│  │  ├─/controller      子应用控制器目录 
│  │    ├─Index.php     子应用控制器 
│  │  ├─/model           子应用模型目录 
│  │  ├─/view            子应用视图目录 
│  │  ├─/config          子应用配置目录 
│  │  ├─/route           子应用路由目录 
│  │  └─ ...             子应用更多类库目录 
│  │ |  ├─BaseController.php  默认基础控制器类 
│  ├─common.php          公共函数文件 
│  ├─event.php           事件定义文件
 |  ├─ExceptionHandle.php 应用异常定义文件(一定要保留这个!否则ERROR 500)
 |  |─middleware.php      全局中间件定义文件
 │  ├─provider.php        服务提供定义文件
 |  └─Request.php         应用请求对象(一定要保留这个!否则ERROR 500)

多应用模式扩展think-multi-app

要使用多应用模式,需要安装think-multi-app,在项目根目录执行以下命令安装:

composer require topthink/think-multi-app

修改控制器的路径

打开app/myApp/controller/Index.php,调整namespace

-   namespace app\controller; 
+   namespace app\myApp\controller; 
    use app\BaseController;

然后通过http服务即可访问:

http://127.0.0.1/thinkphp6/public/index.php/myApp

URL重写

如果想省略index.php,即通过以下方式访问

http://127.0.0.1/thinkphp6/public/myApp

在public/.htaccess添加:

<IfModule mod_rewrite.c>   
Options +FollowSymlinks -Multiviews   
RewriteEngine On   RewriteCond %{REQUEST_FILENAME} !-d   
RewriteCond %{REQUEST_FILENAME} !-f  
 RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] 
</IfModule>

通过官方composer默认安装已经完成了URL重写,这里仅做备忘。

5 多级控制器

目录结构如下:

├─ /app                  应用目录 
│  ├─ /myApp             子应用目录 
│  │  ├─/controller      子应用控制器目录
 │  │    ├─/api           二级控制器目录 
│  │      ├─/Login.php   二级控制器

Login.php代码:

<?php 
namespace app\myApp\controller\api; 
use app\BaseController; 
class Login extends BaseController
 {
     public function index()    
 {        
 return &#39;二级控制器Login&#39;;    
 } 
}

设置之后就可以通过以下URL访问了:

http://127.0.0.1/thinkphp6/public/myApp/api/login

自动创建API控制器

也可以通过命令行自动生成控制器,新生成的控制器包含了预设代码。在根目录执行:

php think make:controller app\myApp\controller\api\Login --api

通过以上设置,基本完成了ThinkPHP6的最基础部署。

(推荐学习:thinkphp5

Das obige ist der detaillierte Inhalt vonThinkPHP erstellt zunächst einen API-Dienst (detaillierte Schritte). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Dieser Artikel ist reproduziert unter:掘金. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
Was sind die Hauptmerkmale des integrierten Test-Frameworks von ThinkPhp?Was sind die Hauptmerkmale des integrierten Test-Frameworks von ThinkPhp?Mar 18, 2025 pm 05:01 PM

In dem Artikel wird das integrierte Test-Framework von ThinkPhP erläutert, wobei die wichtigsten Funktionen wie Einheit und Integrationstests hervorgehoben werden und wie die Anwendungszuverlässigkeit durch frühzeitige Fehlererkennung und verbesserte Codequalität verbessert wird.

Wie kann man ThinkPhp zum Aufbau von Echtzeit-Aktienmarktdaten-Feeds verwenden?Wie kann man ThinkPhp zum Aufbau von Echtzeit-Aktienmarktdaten-Feeds verwenden?Mar 18, 2025 pm 04:57 PM

In Artikel wird ThinkPhp für Echtzeit-Aktienmarktdaten-Feeds mit dem Schwerpunkt auf Setup, Datengenauigkeit, Optimierung und Sicherheitsmaßnahmen erörtert.

Was sind die wichtigsten Überlegungen für die Verwendung von ThinkPhp in einer serverlosen Architektur?Was sind die wichtigsten Überlegungen für die Verwendung von ThinkPhp in einer serverlosen Architektur?Mar 18, 2025 pm 04:54 PM

In dem Artikel werden wichtige Überlegungen zur Verwendung von ThinkPhp in serverlosen Architekturen erörtert, wobei der Schwerpunkt auf Leistungsoptimierung, staatslosem Design und Sicherheit liegt. Es unterstreicht Vorteile wie Kosteneffizienz und Skalierbarkeit, befasst sich aber auch mit Herausforderungen

So implementieren Sie Service -Erkennung und Lastausgleich in ThinkPhp -Microservices?So implementieren Sie Service -Erkennung und Lastausgleich in ThinkPhp -Microservices?Mar 18, 2025 pm 04:51 PM

In dem Artikel wird die Implementierung der Service -Erkennung und des Lastausgleichs in ThinkPhp Microservices erläutert und sich auf Setup, Best Practices, Integrationsmethoden und empfohlene Tools konzentrieren. [159 Zeichen]

Was sind die erweiterten Merkmale des Abhängigkeitsinjektionsbehälters von ThinkPhp?Was sind die erweiterten Merkmale des Abhängigkeitsinjektionsbehälters von ThinkPhp?Mar 18, 2025 pm 04:50 PM

IOC -Container von ThinkPhp bietet erweiterte Funktionen wie fauler Laden, Kontextbindung und Methodeninjektion für eine effiziente Abhängigkeitsführung in PHP -Apps.character Count: 159

Wie kann man ThinkPhp zum Erstellen von Tools in Echtzeitkollaboration verwenden?Wie kann man ThinkPhp zum Erstellen von Tools in Echtzeitkollaboration verwenden?Mar 18, 2025 pm 04:49 PM

In dem Artikel wird die Verwendung von ThinkPhp zum Aufbau von Tools in Echtzeitkollaboration erläutert und sich auf Setup, WebSocket-Integration und Best Practices für Sicherheitsförderungen konzentriert.

Was sind die wichtigsten Vorteile der Verwendung von ThinkPhp zum Aufbau von SaaS -Anwendungen?Was sind die wichtigsten Vorteile der Verwendung von ThinkPhp zum Aufbau von SaaS -Anwendungen?Mar 18, 2025 pm 04:46 PM

ThinkPhp profitiert SaaS -Apps mit leichten Design, MVC -Architektur und Erweiterbarkeit. Es verbessert die Skalierbarkeit, beschleunigt die Entwicklung und verbessert die Sicherheit durch verschiedene Merkmale.

Wie erstelle ich ein verteiltes Task -Warteschlangensystem mit ThinkPhp und Rabbitmq?Wie erstelle ich ein verteiltes Task -Warteschlangensystem mit ThinkPhp und Rabbitmq?Mar 18, 2025 pm 04:45 PM

Der Artikel beschreibt das Erstellen eines verteilten Task -Warteschlangensystems mit ThinkPhp und RabbitMQ, wobei sich die Installation, Konfiguration, Aufgabenverwaltung und Skalierbarkeit konzentriert. Zu den wichtigsten Problemen gehören die Gewährleistung einer hohen Verfügbarkeit, die Vermeidung häufiger Fallstricke wie Unmensch

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

SublimeText3 Englische Version

SublimeText3 Englische Version

Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Leistungsstarke integrierte PHP-Entwicklungsumgebung