Maison  >  Article  >  base de données  >  Comment compiler et installer Nginx+MySQL+PHP sur CentOS

Comment compiler et installer Nginx+MySQL+PHP sur CentOS

WBOY
WBOYavant
2023-06-02 16:07:061363parcourir

Préparation

1. Configuration du pare-feu

centos 7.x utilise le pare-feu comme pare-feu par défaut, ici il est remplacé par le pare-feu iptables.

1. Fermez le pare-feu :

systemctl stop firewalld.service #Arrêter le pare-feu

systemctl désactiver firewalld.service #Désactiver le pare-feu du démarrage

2 Installer le pare-feu iptables

yum installer iptables-services #Installer

vi /. etc /sysconfig/iptables #Modifier le fichier de configuration du pare-feu

# exemple de configuration pour le service iptables

# vous pouvez le modifier manuellement ou utiliser system-config-firewall

# veuillez ne pas nous demander d'ajouter des ports/services supplémentaires à cette valeur par défaut configuration

*filtre

 : acceptation d'entrée [0:0]

 : acceptation avant [0:0]

 : acceptation de sortie [0:0]

-une entrée -m état --état lié, établi - j accepte

-une entrée -p icmp -j accepte

-une entrée -i lo -j accepte

-une entrée -p tcp -m state --state new -m tcp --dport 22 -j accepte

-a input -p tcp -m state --state new -m tcp --dport 80 -j accept

-a input -p tcp -m state --state new -m tcp --dport 3306 -j accept

-a input -j rejeter --reject-with icmp-host-prohibited

-a forward -j rejeter --reject-with icmp-host-prohibited

commit

:wq #Enregistrer et quitter

systemctl ! restart iptables .service #Enfin, redémarrez le pare-feu pour que la configuration prenne effet

systemctl activate iptables.service #Définissez le pare-feu pour qu'il démarre au démarrage

/usr/libexec/iptables/iptables.init restart #Redémarrez le pare-feu

2. Désactivez selinux

vi /etc /selinux/config

#selinux=enforcing #Comment out

#selinuxtype=targeted #Comment out

selinux=disabled #Add

:wq #Enregistrez et quittez

 !

setenforce 0 #Faire en sorte que la configuration prenne effet immédiatement

trois, Accord système

Emplacement de stockage du package de code source du logiciel :/usr/local/src

Emplacement de compilation et d'installation du package de code source :/usr/local/Nom du logiciel

Quatre. Téléchargez le package logiciel

1. Téléchargez nginx

http://nginx.org/download/nginx-1.10.3.tar.gz

2. Téléchargez mysql

https://cdn. .mysql.com/archives/mysql-5.7/mysql-5.7.16. tar.gz

3. Téléchargez php

http://cn2.php.net/distributions/php-7.1.2.tar.gz

.

4. Téléchargez cmake (outil de compilation mysql)

https://cmake .org/files/v3.7/cmake-3.7.2.tar.gz

5. Téléchargez pcre (prend en charge le pseudo-statique nginx)

ftp://ftp.csx.cam.ac.uk/pub/software/programmation/pcre/pcre-8.40.tar.gz

6. Téléchargez openssl (extension nginx)

https://www.openssl.org /source/openssl-1.1.0e.tar.gz

7. Téléchargez zlib (extension nginx)

http://www.zlib.net/zlib-1.2.11.tar.gz

8. php)

https://nchc.dl.sourceforge.net/project /mcrypt/libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz

9. Téléchargez yasm (extension php)

http : //www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

10 t1lib (extension php)

http://download.freenas.org/distfiles/t1lib-5.1. 2.tar.gz

11. Téléchargez le package d'installation de la bibliothèque gd

https://github.com/libgd/libgd/releases/download/gd-2.1.1/libgd-2.1.1.tar.gz

12, libvpx (obligatoire pour la bibliothèque gd)

https://codeload.github.com /webmproject/libvpx/tar.gz/v1.3.0

13, tiff (obligatoire pour la bibliothèque gd)

http://download .osgeo.org/libtiff/tiff-4.0.7.tar.gz

14, libpng (obligatoire pour la bibliothèque gd)

ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng -1.6.28.tar.gz

15, freetype (obligatoire pour la bibliothèque gd)

http: //download.savannah.gnu.org/releases/freetype/freetype-2.7.1.tar.gz

16, jpegsrc (obligatoire pour la bibliothèque gd)

http://www.ijg.org/files/jpegsrc.v9b .tar.gz

17, boost (obligatoire pour compiler mysql)

https://ufpr.dl.sourceforge .net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz

Le package logiciel ci-dessus est téléchargé dans le répertoire /usr/local/src

5. Installez les outils de compilation et les fichiers de bibliothèque (utilisez la commande yum à installer)

yum install -y apr* autoconf automake bison bzip2 bzip2* cloog-ppl compat* cpp curl curl-devel fontconfig fontconfig-devel freetype freetype* freetype-devel gcc gcc-c++ gtk+-devel gd gettext gettext-devel noyau glibc en-têtes du noyau keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng libpng-devel libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool* libgomp libxml2 libxml2-devel libxpm* libxml* libxaw-devel libxmu-devel libtif libtiff* make mpfr ncurses* ntp openssl openssl-devel patch pcre-devel perl php-common php-gd Policycoreutils telnet t1lib t1lib* nasm nasm * wget zlib-devel

Article d'installation

Ce qui suit est d'utiliser l'outil putty pour vous connecter à distance au serveur et opérer sous la ligne de commande

1 Installez mysql

1 Installez cmake

cd /usr/local /src

tar zxvf cmake-3.7.2.tar.gz

.

cd cmake-3.7.2

./configure

make

make install

2. Installez mysql

cd ​​​​/usr/local/src

mkdir -p /usr/local/boost

cp boost_1_59_0.tar.gz /usr/local/boost

groupadd mysql #Ajouter un groupe mysql

useradd -g mysql mysql -s /bin/false #Créez l'utilisateur mysql et rejoignez le groupe mysql. Les utilisateurs Mysql ne sont pas autorisés à se connecter directement au système

mkdir -p /data/mysql #Créez le répertoire de stockage de la base de données mysql.

chown -r mysql :mysql /data/mysql #Définir les autorisations du répertoire de stockage de la base de données mysql

mkdir -p /usr/local/mysql #Créer le répertoire d'installation mysql

cd ​​/usr/local/src #Enter le répertoire de stockage des progiciels

tar zxvf mysql- 5.7.16.tar.gz #Extraire

cd mysql-5.7.16 #Entrer le répertoire

cmake -dcmake_install_prefix=/usr/local/mysql -dmysql_datadir=/data/. mysql -dwith_innobase_storage_engine=1 -ddefault_charset=utf8 -ddefault_collation =utf8_general_ci -dwith_embedded_server=off -dwith_boost=/usr/local/boost

Remarque : vous pouvez utiliser les paramètres -ddownload_boost=1 -dwith_boost=/usr/local/boost pour installer le package boost en ligne. Le serveur doit être connecté à Internet et le téléchargement peut échouer.

cmake . _moteur=1 - dwith_federated_storage_engine=1 -dwith_blackhole_storage_engine=1 -dwithout_example_storage_engine=1 -dwith_embedded_server=off -ddownload_boost=1 -dwith_boost=/usr/local/boost

make #Compile

make install #Install

Erreur de compilation, supprimez la compilation avant de refaire compilation Pour les fichiers en échec, les anciens fichiers objets et les informations du cache doivent être effacés lors de la recompilation.

make clean

rm -f cmakecache.txt

rm -rf /etc/my.cnf #Supprimer le fichier de configuration par défaut du système (s'il n'y a pas de fichier de configuration par défaut, pas besoin de le supprimer)

cd /usr /local/mysql #Entrez le répertoire d'installation de mysql

./bin/mysqld --user=mysql --initialize --basedir=/usr/local/mysql --datadir=/data/mysql #Générer la base de données système mysql

- -initialize signifie que le mot de passe par défaut est généré, --initialize-insecure signifie ne pas générer de mot de passe et le mot de passe est vide.

Voir cette ligne [note] un mot de passe temporaire est généré pour root@localhost : i>x18*=rav=7

cp /usr/local/mysql/support-files/my-default.cnf /usr/local / mysql/my.cnf

ln -s /usr/local/mysql/my.cnf /etc/my.cnf #Lien logiciel ajouté au répertoire /etc

cp /usr/local/mysql/support-files/ mysql .server /etc/rc.d/init.d/mysqld #Ajouter mysql au démarrage du système

chmod 755 /etc/init.d/mysqld #Ajouter des autorisations d'exécution

chkconfig mysqld sur #Ajouter au démarrage

vi / etc /rc.d/init.d/mysqld #Edit

basedir=/usr/local/mysql #chemin d'installation du programme mysql

datadir=/data/mysql #répertoire de stockage de la base de données mysql

:wq #Enregistrez et quittez

service mysqld start #Start

vi /etc/profile #Ajoutez le service mysql à la variable d'environnement système : ajoutez la ligne suivante à la fin

export path=$path:/usr/local/mysql/bin

 : wq! # Enregistrez et quittez

source /etc/profile #Faites en sorte que la configuration prenne effet immédiatement

Les deux lignes suivantes relient le fichier de bibliothèque myslq à l'emplacement par défaut du système, afin que vous n'ayez pas besoin de spécifier l'adresse du fichier de bibliothèque mysql lors de la compilation de logiciels tels que php.

ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql

ln -s /usr/local/mysql/include/mysql /usr/include/mysql

mkdir /var/lib/ mysql #Créer un répertoire

ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock #Ajouter un lien logiciel

mysql_secure_installation #Modifier le mot de passe mysql, entrez le mot de passe généré précédemment csjlm3dytg.d et appuyez sur Entrée, suivez les invites fonctionnent.

appuyez sur y|y pour oui, sur n'importe quelle autre touche pour non : y #Voulez-vous installer le plug-in de sécurité par mot de passe ? Choisissez y

il existe trois niveaux de politique de validation de mot de passe : #Il existe les options de force de mot de passe suivantes

longueur faible >= 8

longueur moyenne >= 8, numérique, casse mixte et caractères spéciaux

longueur forte >= 8, numérique, casse mixte, caractères spéciaux et fichier dictionnaire

veuillez saisir 0 = faible, 1 = moyen et 2 = fort : 0 #Sélectionnez 0, tant que 8 chiffres suffisent, sélectionnez 1 pour avoir des majuscules et lettres minuscules, caractères spéciaux, etc.

désinstaller le plugin validate_password; #Désinstaller le plugin de force de mot de passe

utiliser mysql;

mettre à jour mysql.user set ignition_string=password('123456') où user='root'; à la console MySQL pour modifier

modifier l'utilisateur 'root'@'localhost' identifié avec mysql_native_password comme '123456' /pcre

tar zxvf pcre-8.40.tar.gzcd pcre-8.40

./configure - -prefix=/usr/local/pcre

make

make install

2. Installez openssl

cd ​​/usr/local/src

mkdir /usr/local/openssl

tar zxvf openssl-1.1.0e. tar.gz

cd openssl-1.1.0e

./config --prefix=/usr/local/ openssl

make

make install

vi /etc/profile

export path=$path:/usr /local/openssl/bin

:wq!

source /etc/profile

3. Installez zlib

cd /usr/local/src

mkdir /usr/local/zlib

tar zxvf zlib-1.2. 11.tar.gz

cd zlib-1.2.11

./configure --prefix=/usr/ local/zlib

make

make install

4 Installez nginx

.

groupadd www

useradd -g www www -s /bin/false

cd /usr/local/src

tar zxvf nginx-1.10.3.tar.gz

cd nginx-1.10.3

./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/usr/local/src/openssl-1.1.0e --with-zlib=/usr/local/src/zlib-1.2.11 --with-pcre=/usr/local/src/pcre-8.40

注意:--with-openssl=/usr/local/src/openssl-1.1.0e --with-zlib=/usr/local/src/zlib-1.2.11 --with-pcre=/usr/local/src/pcre-8.40指向的是源码包解压的路径,而不是安装的路径,否则会报错

make

make install

/usr/local/nginx/sbin/nginx #启动nginx

设置nginx开机启动

vi /etc/rc.d/init.d/nginx #编辑启动文件添加下面内容

############################################################

#!/bin/sh

#

# nginx - this script starts and stops the nginx daemon

#

# chkconfig: - 85 15

# description: nginx is an http(s) server, http(s) reverse \

# proxy and imap/pop3 proxy server

# processname: nginx

# config: /etc/nginx/nginx.conf

# config: /usr/local/nginx/conf/nginx.conf

# pidfile: /usr/local/nginx/logs/nginx.pid

# source function library.

. /etc/rc.d/init.d/functions

# source networking configuration.

. /etc/sysconfig/network

# check that networking is up.

[ "$networking" = "no" ] && exit 0

nginx="/usr/local/nginx/sbin/nginx"

prog=$(basename $nginx)

nginx_conf_file="/usr/local/nginx/conf/nginx.conf"

[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx

lockfile=/var/lock/subsys/nginx

make_dirs() {

# make required directories

user=`$nginx -v 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`

if [ -z "`grep $user /etc/passwd`" ]; then

useradd -m -s /bin/nologin $user

fi

options=`$nginx -v 2>&1 | grep 'configure arguments:'`

for opt in $options; do

if [ `echo $opt | grep '.*-temp-path'` ]; then

value=`echo $opt | cut -d "=" -f 2`

if [ ! -d "$value" ]; then

# echo "creating" $value

mkdir -p $value && chown -r $user $value

fi

fi

done

}

start() {

[ -x $nginx ] || exit 5

[ -f $nginx_conf_file ] || exit 6

make_dirs

echo -n $"starting $prog: "

daemon $nginx -c $nginx_conf_file

retval=$?

echo

[ $retval -eq 0 ] && touch $lockfile

return $retval

}

stop() {

echo -n $"stopping $prog: "

killproc $prog -quit

retval=$?

echo

[ $retval -eq 0 ] && rm -f $lockfile

return $retval

}

restart() {

#configtest || return $?

stop

sleep 1

start

}

reload() {

#configtest || return $?

echo -n $"reloading $prog: "

killproc $nginx -hup

retval=$?

echo

}

force_reload() {

restart

}

configtest() {

$nginx -t -c $nginx_conf_file

}

rh_status() {

status $prog

}

rh_status_q() {

rh_status >/dev/null 2>&1

}

case "$1" in

start)

rh_status_q && exit 0

$1

;;

stop)

rh_status_q || exit 0

$1

;;

restart|configtest)

$1

;;

reload)

rh_status_q || exit 7

$1

;;

force-reload)

force_reload

;;

status)

rh_status

;;

condrestart|try-restart)

rh_status_q || exit 0

;;

*)

echo $"usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"

exit 2

esac

############################################################

:wq! #保存退出

chmod 775 /etc/rc.d/init.d/nginx #赋予文件执行权限

chkconfig nginx on #设置开机启动

/etc/rc.d/init.d/nginx restart #重启

在浏览器中打开服务器ip地址,会看到下面的界面,说明nginx安装成功。

Comment compiler et installer Nginx+MySQL+PHP sur CentOS

三、安装php

1、安装yasm

cd /usr/local/src

tar zxvf yasm-1.3.0.tar.gz

cd yasm-1.3.0

./configure

make

make install

2、安装libmcrypt

cd /usr/local/src

tar zxvf libmcrypt-2.5.8.tar.gz

cd libmcrypt-2.5.8

./configure

make

make install

3、安装libvpx

cd /usr/local/src

tar zxvf libvpx-1.3.0.tar.gz

cd libvpx-1.3.0

./configure --prefix=/usr/local/libvpx --enable-shared --enable-vp9

make

make install

4、安装tiff

cd /usr/local/src

tar zxvf tiff-4.0.7.tar.gz

cd tiff-4.0.7

./configure --prefix=/usr/local/tiff --enable-shared

make

make install

5、安装libpng

cd /usr/local/src

tar zxvf libpng-1.6.28.tar.gz

cd libpng-1.6.28

./configure --prefix=/usr/local/libpng --enable-shared

make

make install

6、安装freetype

cd /usr/local/src

tar zxvf freetype-2.7.1.tar.gz

cd freetype-2.7.1

./configure --prefix=/usr/local/freetype --enable-shared

make

make install

7、安装jpeg

cd /usr/local/src

tar zxvf jpegsrc.v9b.tar.gz

cd jpeg-9b

./configure --prefix=/usr/local/jpeg --enable-shared

make

make install

8、安装libgd

cd /usr/local/src

tar zxvf libgd-2.1.1.tar.gz

cd libgd-2.1.1

./configure --prefix=/usr/local/libgd --enable-shared --with-jpeg=/usr/local/jpeg --with-png=/usr/local/libpng --with-freetype=/usr/local/freetype --with-fontconfig=/usr/local/freetype --with-xpm=/usr/lib64 --with-tiff=/usr/local/tiff --with-vpx=/usr/local/libvpx

make

make install

说明:如果libgd编译失败,可以先跳过,直接使用系统默认的2.1.0版本,在编译php的时候把参数--with-gd=/usr/local/libgd修改为--with-gd即可。

9、安装t1lib

cd /usr/local/src

tar zxvf t1lib-5.1.2.tar.gz

cd t1lib-5.1.2

./configure --prefix=/usr/local/t1lib --enable-shared

make without_doc

make install

10、安装php

注意:如果系统是64位,请执行以下两条命令,否则安装php会出错。

\cp -frp /usr/lib64/libltdl.so* /usr/lib/

\cp -frp /usr/lib64/libxpm.so* /usr/lib/

cd /usr/local/src

tar -zvxf php-7.1.2.tar.gz

cd php-7.1.2

export ld_library_path=/usr/local/libgd/lib

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/tmp/mysql.sock --with-pdo-mysql=/usr/local/mysql --with-gd=/usr/local/libgd --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg --with-freetype-dir=/usr/local/freetype --with-xpm-dir=/usr/lib64 --with-zlib-dir=/usr/local/zlib --with-iconv --enable-libxml --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-opcache --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --enable-ctype --enable-mysqlnd

make #编译

make install #安装

说明:如果提示libgd版本错误,把php编译参数--with-gd=/usr/local/libgd修改为--with-gd即可。

cp php.ini-production /usr/local/php/etc/php.ini #复制php配置文件到安装目录

rm -rf /etc/php.ini #删除系统自带配置文件

ln -s /usr/local/php/etc/php.ini /etc/php.ini #Ajoutez un lien symbolique vers le répertoire /etc

cp /usr/local/php/etc/php-fpm.conf. default / usr/local/php/etc/php-fpm.conf #Copiez le fichier modèle dans le fichier de configuration php-fpm

ln -s /usr/local/php/etc/php-fpm.conf /etc/php -fpm.conf #Ajouter un lien symbolique vers le répertoire /etc

vi /usr/local/php/etc/php-fpm.conf #Edit

pid = run/php-fpm.pid #Annuler le point-virgule précédent

:wq # Enregistrez et quittez

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

vi /usr/local /php/etc/php-fpm.d/www.conf #Edit

user = www #Définissez le compte en cours d'exécution php-fpm comme www

group = www #Définissez le groupe d'exécution php-fpm comme www

Définir php-fpm Démarrage

cp /usr/local/src/php-7.1.2/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php- fpm #Copier php-fpm dans le répertoire de démarrage

chmod +x /etc/rc.d/init.d/php-fpm #Ajouter des autorisations d'exécution

chkconfig php-fpm sur #Définir le démarrage

vi /usr/local/ php/etc/php.ini #Modifier le fichier de configuration

Trouvé : désactiver_fonctions =

Modifier en : désactiver_fonctions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore, dl, openlog, syslog, readlink, lien symbolique, popepassthru, stream_socket_server, escapeshellcmd, dll, popen, disk_free_space, checkdnsrr, checkdnsrr, getservbyname, getservbyport, disk_total_space, posix_ctermid, posix_get_last_error, posix_getegid, posix_geteuid, posix_getgid, , posix_getgrgid,pos ix_getgrnam,posix_getgroups ,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, d, posix_setsid, posix_setuid, posix_strerror, posix_time s, posix_ttyname, posix_uname

# Liste les fonctions qui peuvent être désactivées en php, si certains programmes doivent utiliser cette fonction et peuvent être supprimés ou désactivés.

Trouvé : ;date.timezone =

Modifié en : date.timezone = prc #Définir le fuseau horaire

Trouvé : exposer_php = on

Modifié en : exposer_php = off #Supprimer l'affichage des informations de version php

Trouvé : short_open_tag = off

Modifié en : short_open_tag = on #Support php short tag

Find opcache.enable=0

Modifié en opcache.enable=1 #php prend en charge la mise en cache des opcodes

Trouvé :;opcache.enable_cli=1 #php prend en charge opcode Cache

Modifier vers : opcache.enable_cli=0

Ajouter dans la dernière ligne : zend_extension=opcache.so #Activer la fonction de mise en cache des opcodes

:wq #Enregistrer et quitter

Configurer nginx pour prendre en charge php

vi / usr/local/ nginx/conf/nginx.conf

Modifiez le fichier de configuration /usr/local/nginx/conf/nginx.conf et apportez les modifications suivantes

user www www; et modifiez le groupe en cours d'exécution nginx en www www ; Il doit être identique aux configurations d'utilisateur et de groupe dans /usr/local/php/etc/php-fpm.conf, sinon php ne fonctionnera pas correctement

index index.html index. htm index.php; #Ajouter index.php

# transmettre les scripts php au serveur fastcgi en écoute sur 127.0.0.1:9000

#

emplacement ~ .php$ {

root html;

fastcgi_pass 127.0.0.1 : 9000;

fastcgi_index index.php;

fastcgi_param script_filename $ document_root$fastcgi_script_name;

include fastcgi_params;

}

#Décommentez l'emplacement de la partie serveur fastcgi, faites attention aux paramètres de la ligne fastcgi_param, modifiez-la vers $document_root$fastcgi_script_name, ou utilisez le chemin absolu

/etc/init.d/nginx restart #Restart nginx

service php-fpm start #Start php-fpm

Test section

cd /usr/local /nginx/html/ #Entrez le répertoire racine du site Web par défaut de nginx

rm -rf /usr/local /nginx/html/* #Supprimez la page de test par défaut

vi index.php #Créez un nouveau fichier index.php

< ;?php

phpinfo();

?>

:wq! #Enregistrez et quittez

chown www.www /usr/local/nginx/html/ -r #Définir le propriétaire du répertoire

chmod 700 /usr /local/nginx/html/ -r #Définir les autorisations du répertoire

Ouvrez l'adresse IP du serveur dans le navigateur, vous verrez l'interface suivante

Comment compiler et installer Nginx+MySQL+PHP sur CentOS

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer