Maison > cadre php > PensezPHP > le corps du texte

À propos de Laradocke qui exécute le projet TP

藏色散人
Libérer: 2020-10-13 10:18:11
avant
2700 Les gens l'ont consulté
Ci-dessous

Thinkphp La colonne du didacticiel sur le cadre présentera à tout le monde Laradocke qui dirige le projet TP, j'espère que cela sera utile aux amis dans le besoin !

À propos de Laradocke qui exécute le projet TP

1 Lorsque Laradock a été lancé pour la première fois, le processus de construction était très lent

En raison du pull containers L'image est à l'étranger par défaut, donc avant de composer le conteneur par docker, recherchez le texte suivant dans le fichier .env

CHANGE_SOURCE=``false

puis remplacez false par true et recherchez le texte suivant

#UBUNTU_SOURCE=aliyun

Supprimez le # devant, c'est-à-dire supprimez le commentaire, remplacez la source miroir étrangère par défaut par la source miroir nationale fast aliyun

puis changez le fuseau horaire de l'espace de travail, passez au fuseau horaire de la Chine, recherchez le texte suivant

WORKSPACE_TIMEZONE=UTC

Changez UTC en PRC

puis exécutez la commande

docker-compose up -d nginx mariadb

Choisissez le conteneur dont vous avez besoin pour démarrer

J'ai personnellement comparé le temps de construction à moins de 20 M de bande passante, si la source de l'image n'est pas modifiée, elle le sera. aussi rapide qu'une heure et aussi lent qu'un jour. Après le changement, cela ne prend que 10 minutes

2. Si le texte pertinent "raw.githubusercontent.com" apparaît, alors dans les hôtes locaux, liez le nom de domaine à ip

Prenons Linux comme exemple

vim ``/etc/hostsEntrez "199.232.28.133 raw.githubusercontent.com" dans le fichier

3. L'installation du compositeur est lente Après avoir installé laradock, utilisez git pour extraire le framework tp5 de l'entrepôt d'hébergement tiers dans le conteneur worksapce, puis installez les dépendances du framework, à ce stade, l'installation de composer est très lente, vous devez remplacer la source domestique, exécutez ce qui suit commande

composer config -g repo.packagist composer https:``//packagist``.phpcomposer.com

4. Composer ignore l'installation du numéro de version Processus d'installation de Composer rencontré Vos exigences n'ont pas pu être résolu en un ensemble de packages installables message d'erreur, vous pouvez ignorer l'installation du numéro de version, exécuter la commande suivante

composer ``install--ignore-platform-reqs

5. Composer installe l'outil de migration de base de données pour tp5 L'outil de migration pour tp5.0 est 1.

, tp5.1 est 2.

, si le numéro de version n'est pas précisé , le dernier outil de migration sera installé par défaut. Exécutez la commande suivante

composer require topthink``/think-migration``=1.*

6. laradock Lors de la configuration de la connexion à la base de données dans tp5, l'hôte remplit le nom du conteneur J'utilise le conteneur mariadb, donc la configuration suivante est

'host'=>'mariadb'

<.>7. tp5 donne toutes les autorisations au runtime

hmod -r runtime 777

8. tp5 capture les exceptions levées par MySQLAjoutez une barre oblique inverse devant le paramètre catch Exception pour indiquer que la capture est démarrée à partir du niveau d'exception le plus bas

catch``(Exception)

9. Lors de la création de l'interface de téléchargement d'images, mkdir a signalé une erreur d'absence d'autorisationAfin de faciliter la référence des images, j'ai désigné le répertoire de stockage des images comme public/uploads, mais une erreur a été signalée , qui peut être résolu en accordant des autorisations complètes au public

chmod -r public 777

Vérification des autorisations lors de l'interface backendoauth2 est un très bon mécanisme d'autorisation, PHP a une bonne bibliothèque https://github.com/thephpleague/oauth2-server, mais il est très impuissant Contrairement à Laravel, qui a un passeport, il prend également en charge Drupal, cakephp et autres. frameworks

Utiliser Json-web -Token est également très bon https://github.com/lcobucci/jwt

11. Traitement inter-domaines dans le répertoire de l'application Ajouter les fichiers à exécuter lors de l'initialisation de l'application dans tags.php sous Par exemple, je mets le cross-domain dans le fichier applicationapi/behavior/CORS.php, et l'en-tête <.>

est émis lors du processus d'initialisation de l'application

Fichiers inter-domaines// 应用初始化``'app_init'.

<?php
namespace app\api\behavior; use think\Response; class CORS{ public function appInit(&$params)
    { header(&#39;Access-Control-Allow-Origin: *&#39;);
    header("Access-Control-Allow-Headers: token,Origin, X-Requested-With, Content-Type, Accept");
    header("Access-Control-Allow-Methods:GET, POST"); 
        if (request()->isOptions()) {
            exit();
        }
    }}
Copier après la connexion

12. git push/pull nécessite une vérification d'identité Entrez le nom d'utilisateur et le mot de passe plusieurs fois

Dans l'environnement Linux, dans le répertoire d'entrepôt Exécuter

git config --global credential.helper store

13. git push coincé

Définissez le colis d'envoi pour qu'il soit sans bordure, et la requête http est modifiée Réglez le tampon plus grand

git config --global sendpack.sideband false git config --global http.postBuffer 524288000

14. nginx ne prend pas en charge le pathinfo de tp5

Changer de projet Configuration du fichier .conf correspondant

<?php
namespace app\api\behavior; use think\Response; class CORS
{ public function appInit(&$params)
    { header(&#39;Access-Control-Allow-Origin: *&#39;);
    header("Access-Control-Allow-Headers: token,Origin, X-Requested-With, Content-Type, Accept");
    header("Access-Control-Allow-Methods:GET, POST"); 
        if (request()->isOptions()) {
            exit();
        }
    }
}
Copier après la connexion

emplacement avant changement ~ .php$ {

 location ~ \.php { 
    try_files $uri /index.php =404;
    fastcgi_pass php-upstream;
    fastcgi_index index.php;
    fastcgi_buffers 16 16k;
    fastcgi_buffer_size 32k;
    # 添加部分↓↓↓↓
    # Set var PATH_INFO
    fastcgi_split_path_info ^(.+\.php)(.*)$;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    #  添加部分↑↑↑↑
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;   
    #fixes timeouts
    fastcgi_read_timeout 600;
    include fastcgi_params;}
Copier après la connexion

Je trouverai le temps d'apprendre les options spécifiques

14. Configuration Docker source domestique

sudo tee /etc/docker/daemon.json <<-&#39;EOF&#39;

vim /etc/docker/daemon.json

Entrez le contenu suivant, l'adresse peut être sélectionnée par vous-même

{
  "registry-mirrors": ["https://uxk0ognt.mirror.aliyuncs.com"]
  }
Copier après la connexion

# puis exécutez la commande suivante

systemctl daemon-reload
systemctl restart docker

Remarques

Comme nous le savons tous, le clonage depuis github est toujours lent. Vous pouvez choisir d'utiliser Code Cloud pour importer des entrepôts couramment utilisés dans votre propre espace de travail Code Cloud. à l'avance. Lorsque vous avez besoin de l'utiliser, vous pouvez utiliser Code Cloud                                                    .

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:learnku.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!