Table des matières
1. Déploiement en ligne du projet
1.Préface
2 Installez PHP7
6. Décompressez le code et importez-le dans la base de données
7. Créer un hôte virtuel
Maison développement back-end tutoriel php Vous apprendre étape par étape le déploiement de l'environnement Linux PHP et le lancement du projet (partage)

Vous apprendre étape par étape le déploiement de l'environnement Linux PHP et le lancement du projet (partage)

Jun 07, 2021 am 09:49 AM

Cet article partagera avec vous le déploiement de l'environnement PHP Linux et le lancement du projet Il a certaines références Valeur, les amis dans le besoin peuvent s'y référer, j'espère que cela sera utile à tout le monde.

Vous apprendre étape par étape le déploiement de l'environnement Linux PHP et le lancement du projet (partage)

1. Déploiement en ligne du projet

1.Préface

Pour déployer environnement de projets en ligne, les conditions suivantes doivent être au préalable remplies : serveur (IP, mot de passe du compte, terminal), logiciel correspondant, nom de domaine (analyse de l'enregistrement, code), etc.

Achat de serveur et de nom de domaine

Connectez-vous d'abord à la console et obtenez l'adresse IP de l'hébergeur auquel vous devez vous connecter :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Obtenir l'adresse IP Après vous être connecté à l'adresse IP publique, vous pouvez utiliser l'outil de terminal distant pour vous connecter au serveur à exploiter en ligne.

Les outils distants peuvent utiliser Putty, CMD, etc., sans restrictions.

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Prenons CentOS7.6 comme exemple. Après avoir acheté un serveur et créé une instance, veuillez vous connecter au système pour la première fois et exécuter "yum -y update". pour mettre à jour l'ensemble du système pour éviter qu'il y ait des vulnérabilités dans le système :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

2 Installez PHP7

Dans la source yum par défaut du système actuel, la dernière version. de PHP est 5.4.16[DY2], Les projets qui doivent être lancés nécessitent la version minimale de PHP7.0. Pour le moment, EPEL[DY3] peut résoudre ce problème.

a. Installez epel pour CentOS7

 rpm -Uvhhttps://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Copier après la connexion

b. Obtenez la source yum de PHP7

rpm -Uvhhttps://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Copier après la connexion

c. Installez PHP7.2 et ses extensions communes

yum install php72w php72w-cli php72w-common php72w-develphp72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlndphp72w-opcache php72w-pdo php72w-xml
Copier après la connexion
<🎜. >

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)


d. Tester l'installation de PHP

php -v
Copier après la connexion

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

3. Installer Apache2

a. commande :

yum -y install httpd
Copier après la connexion

b. Configurez Apache pour démarrer et démarrer Apache :

systemctl activate httpd && systemctl start httpd[DY4]

c. Le script php teste si Apache analyse normalement les fichiers dynamiques et statiques

Remarque : le site par défaut d'Apache se trouve à "/var /www/html"

Créez des fichiers index.html et index.php avec n'importe quel contenu :

Utilisez un navigateur pour tester l'accès :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

4. Installez Mariadb[DY5]

Le Mariadb installé ici est une branche majeure de MySQL, et il n'est pas très différent de MySQL utilisé.

a. Exécutez la commande d'installation

yum -y install mariadb-server
Copier après la connexion

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

b. Démarrez le service Mariadb et définissez les éléments de démarrage

systemctl enable mariadb && systemctlstart mariadb
Copier après la connexion

c. initialisation de la base de données Mariadb Instructions (définition du mot de passe initial et autres opérations)

mysql_secure_installation[DY6]

d Essayez de vous connecter à Mariadb en utilisant la ligne de commande

mysql -u root -p
Copier après la connexion

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

5 , Résolution de nom de domaine

J'avais l'habitude de modifier le fichier hosts, qui est en fait un type de résolution de nom de domaine. À cette époque, il n'était limité qu'au local, mais maintenant. il doit être considéré en ligne.

Pour effectuer la résolution, vous devez vous connecter au panneau de contrôle du nom de domaine. Avant d'analyser le nom de domaine, il est préférable de vous assurer que le nom de domaine a été enregistré. S'il n'y a pas de nom de domaine enregistré, bien que la résolution réussisse, cela affectera l'utilisation lorsque l'utilisation sera interceptée par le fournisseur de services.

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Cliquez sur le bouton Ajouter un enregistrement d'analyse :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Remplissez les informations d'enregistrement correspondantes dans l'interface de la fenêtre contextuelle [DY7] :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Utiliser le test ping :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

6. Décompressez le code et importez-le dans la base de données

Étape 1** : Importez le fichier sql**** dans le base de données**

Entrez dans l'interface de gestion de ligne de commande de la base de données, créez la base de données requise edu16 et utilisez la commande source pour importer le fichier sql :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Étape 2* * : Créez le répertoire d'exécution du site, décompressez le package zip**** du code téléchargé, puis copiez le code dans le répertoire d'exécution du site**

a. Le répertoire du site est accepté comme étant "/var /www/html".

Créer le répertoire du site :

Le répertoire existe déjà, pas besoin de le créer

b Copiez le package compressé de code précédemment téléchargé dans le répertoire du site actuel, décompressez le compressé. package, et la décompression est terminée Vous pouvez le supprimer plus tard

Syntaxe de décompression : décompresser le chemin du package compressé

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

À ce moment, car le fichier d'entrée du site est dans le répertoire public et le site du projet actuel est dans /var Dans /www/html, il manque un public, vous devez donc modifier l'élément DocumentRoot dans le fichier de configuration Apache à ce moment-là.

# vim /etc/httpd/conf/httpd.conf
Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Accordez également l'autorisation d'écriture sur le répertoire temporaire :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)
Résolvez le problème pseudo-statique (si vous ne le résolvez pas, vous ne pouvez accéder qu'à la page d'accueil, et les autres pages recevront 404) :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Idée : ouvrez le répertoire racine de l'élément de configuration AllowOverride du site actuel, définissez-le sur Tout, puis redémarrez Apache.

7. Créer un hôte virtuel

Objectif : Il est nécessaire que le serveur en ligne soit accessible via le protocole https. [Améliorez la sécurité et renforcez la confiance des utilisateurs dans le site Web]

a. Demandez un certificat SSL

Si vous souhaitez que votre site prenne en charge le protocole https, vous devez d'abord demander un certificat de serveur auprès de le CA. Il existe actuellement de nombreux certificats gratuits disponibles, tels que le certificat gratuit d'un an de Sysmantec en coopération avec Alibaba Cloud. Généralement, les certificats gratuits ne peuvent être liés qu'à un seul nom de domaine. En plus d'un an de service gratuit, il existe également trois mois de service gratuit, mais il n'y a pas de limite sur le nombre de fois, le nombre de noms de domaine et prend même en charge les caractères génériques.

Prenons Alibaba Cloud comme exemple :

https://common-buy.aliyun.com/?spm=5176.2020520163.cas.3.267d56a7EBRcYw&commodityCode=cas#/buy

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Une fois le paiement effectué, cliquez sur « Certificat à appliquer » :
Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)
Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)
Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Attendez que l'émission du certificat soit terminée, puis téléchargez le certificat :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Les fichiers publics et privés du certificat obtenus après décompression du package compressé :

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

Téléchargez les trois fichiers sur le serveur, corrigez le chemin de sauvegarde et essayez de ne pas le modifier.

Il est convenu que les fichiers de certificats publics et privés seront stockés dans "/ssl/"
Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

b Installez le module mod_ssl d'Apache

yum. -y install mod_ssl

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

c. Référence de configuration de l'hôte virtuel (80+443) :

Remarque : Apache installé avec yum Le fichier de configuration principal par défaut pour se trouve dans /etc/httpd/conf/httpd.conf

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

根据主配置文件中的配置可以看出,其引入了conf.d目录下的全部conf文件,那么可以在该目录中创建一个vhosts.conf****文件,作为虚拟主机的配置文件:

80端口主机:

<VirtualHost *:80>
ServerAdmin cherish@cherish.pw
DocumentRoot"PATH"
ServerName “yourdomain.com”
<Directory “PATH”>
Allow from all
AllowOverride all
Options -indexes
Require all granted
Copier après la connexion

443端口主机:

<VirtualHost *:443>
SSLEngine on
SSLCertificateFile “公钥文件路径”
SSLCertificateKeyFile “私钥文件路径”
SSLCertificateChainFile “证书链文件路径”
SSLCipherSuite"ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE"
SSLProtocol TLSv1.1 TLSv1.2
Headeralways set Strict-Transport-Security “max-age=63072000; includeSubdomains;preload”
DocumentRoot “PATH”
ServerName “yourdomain.com”
<Directory “PATH”>
Allowfrom all
AllowOverride all
Options -indexes
Require all granted
Copier après la connexion

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

创建好之后,参考上述的框框中配置代码,进行修改,其中443端口的虚拟主机配置含义如下:
Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

修改完毕之后保存退出,然后重启apache

systemctl restart httpd

d. 打开浏览器访问项目,检查https协议是否生效

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

问题,生效虽然生效了,但是https协议需要用户手动去补充,在直接输入域名访问的时候默认还是80的http****协议,如何解决?

答:使用重写的方法,强制用户在访问http的时候跳转到https。操作步骤如下,在站点根目录下的“.htaccess”文件中添加如下代码,保存退出即可:
Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

RewriteCond %{HTTPS} !=on

RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]

举手之劳:框架运行的时候报错了,请解决。

错误1**:权限不足**
Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

解决办法:
Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

错误2**:数据库连接失败**

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

解决办法:修改项目目录下的.env文件

Vous apprendre étape par étape le déploiement de lenvironnement Linux PHP et le lancement du projet (partage)

处理完毕之后项目即可访问您的项目了。


[DY1]如搭配使用的服务器在大陆境内,则需要域名先通过ICP备案。

[DY2]RHEL以及他的衍生发行版如CentOS、Scientific Linux为了稳定,官方的rpm repository提供的rpm包往往是很滞后的,当然了,这样做这是无可厚非的,毕竟这是服务器版本,安全稳定才是重点。

[DY3]EPEL:Extra Packages of EnterpriseLinux

[DY4]“指令A && 指令B”语法表示当指令A执行成功之后再去执行指令B。

systemctl指令是CentOS7中特有的指令,含义如指令名称:systemcontrol。

控制服务开关:

systemctl 开关服务名

启动项管理:

  • systemctl enable/disable 服务名

  • [DY5]在CentOS7的yum源中,数据库软件没有MySQL,取而代之的是Mariadb。

  • [DY6]执行该指令后依次有以下几个输入内容:

  • 输入当前数据库root帐号密码,没有密码则直接按回车;

  • 是否设置密码?输入Y后,为root用户设置密码;

  • 是否移除匿名用户?选择Y;

  • 是否禁止root用户远程登录?Y/n均可,不会生效;

  • 是否删除测试的test数据库?选择Y/n均可;

  • 是否刷新权限?选择Y;

[DY7]常见的几个记录类型:

A记录:将域名指向一个IPv4地址;

CNAME记录:域名的别名,将一个域名指向另一个域名;

MX记录:一般用于做域名邮箱,将域名指向一个邮件服务器;

推荐学习:《PHP视频教程

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Travailler avec les données de session Flash dans Laravel Travailler avec les données de session Flash dans Laravel Mar 12, 2025 pm 05:08 PM

Laravel simplifie la gestion des données de session temporaires à l'aide de ses méthodes de flash intuitives. Ceci est parfait pour afficher de brefs messages, alertes ou notifications dans votre application. Les données ne persistent que pour la demande ultérieure par défaut: $ demande-

Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Mar 14, 2025 am 11:42 AM

L'extension PHP Client URL (CURL) est un outil puissant pour les développeurs, permettant une interaction transparente avec des serveurs distants et des API REST. En tirant parti de Libcurl, une bibliothèque de transfert de fichiers multi-protocol très respectée, PHP Curl facilite Efficient Execu

Misque de réponse HTTP simplifié dans les tests Laravel Misque de réponse HTTP simplifié dans les tests Laravel Mar 12, 2025 pm 05:09 PM

Laravel fournit une syntaxe de simulation de réponse HTTP concise, simplifiant les tests d'interaction HTTP. Cette approche réduit considérablement la redondance du code tout en rendant votre simulation de test plus intuitive. L'implémentation de base fournit une variété de raccourcis de type de réponse: Utiliser illuminate \ support \ faades \ http; Http :: faux ([[ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

Découvrez les téléchargements de fichiers dans Laravel avec Storage :: Télécharger Découvrez les téléchargements de fichiers dans Laravel avec Storage :: Télécharger Mar 06, 2025 am 02:22 AM

La méthode de téléchargement du stockage :: du framework Laravel fournit une API concise pour gérer en toute sécurité les téléchargements de fichiers tout en gérant les abstractions du stockage de fichiers. Voici un exemple d'utilisation de stockage :: télécharger () dans l'exemple de contrôleur:

12 meilleurs scripts de chat PHP sur Codecanyon 12 meilleurs scripts de chat PHP sur Codecanyon Mar 13, 2025 pm 12:08 PM

Voulez-vous fournir des solutions instantanées en temps réel aux problèmes les plus pressants de vos clients? Le chat en direct vous permet d'avoir des conversations en temps réel avec les clients et de résoudre leurs problèmes instantanément. Il vous permet de fournir un service plus rapide à votre personnalité

Expliquez le concept de liaison statique tardive en PHP. Expliquez le concept de liaison statique tardive en PHP. Mar 21, 2025 pm 01:33 PM

L'article traite de la liaison statique tardive (LSB) dans PHP, introduite dans PHP 5.3, permettant une résolution d'exécution de la méthode statique nécessite un héritage plus flexible. Problème main: LSB vs polymorphisme traditionnel; Applications pratiques de LSB et perfo potentiel

PHP Logging: meilleures pratiques pour l&amp;#39;analyse du journal PHP PHP Logging: meilleures pratiques pour l&amp;#39;analyse du journal PHP Mar 10, 2025 pm 02:32 PM

La journalisation PHP est essentielle pour surveiller et déboguer les applications Web, ainsi que pour capturer des événements critiques, des erreurs et un comportement d&amp;#39;exécution. Il fournit des informations précieuses sur les performances du système, aide à identifier les problèmes et prend en charge le dépannage plus rapide

Comment s'inscrire et utiliser les fournisseurs de services Laravel Comment s'inscrire et utiliser les fournisseurs de services Laravel Mar 07, 2025 am 01:18 AM

Les fournisseurs de services et les fournisseurs de services de Laravel sont fondamentaux pour son architecture. Cet article explore les conteneurs de services, détaille la création du fournisseur de services, l'enregistrement et démontre l'utilisation pratique avec des exemples. Nous commencerons par un ove

See all articles