LAMP=Linux+Apache+Mysql+Php
1. Le service Internetwebgrand public actuel
service statique :
1.apache---petit et moyen -sized staticwebLe courant dominant des services, webLe grand frère du serveur
2 .nginx---Nouveau réseau statique à grande échelle web sert le grand public, webun veau nouveau-né dans le serveur
3 .lighttpd---staticweb Le service est tiède, ce qui signifie qu'il est progressivement éliminé La communauté n'est pas active. et l'efficacité est très élevée.
Services dynamiques :
1.IIS (Internet information services)---Serveur web de Microsoft (asp, aspx)
2.tomcat---Actualités PMEweb services grand public, Internetjavaconteneur grand public (jsp, faire )
3.resin---Grand site dynamiquewebService grand public, Internet javaconteneur mainstream (jsp, do)
4. php(fcgi)---grands, moyens et petits sites Web, php Conteneur d'analyse de programme
a. coopère avec apache, php n'est pas un démon, mais mod_php5.so(module)
b. coopère avec nginx, lighttpd, phpmode démon, FCGI mode.
2. Installation d'Apache
1.Assurez-vous d'abord d'installer httpd Service (yum install httpd -y)
OK : yum install gcc gcc++ zlib zlib-devel -y
2.Installer apache (adresse Site Web de Shangguan)
apache Compilation du code source :
./configure --prefix=/application/apache2.2.32
--enable-expires
--enable-headers
--enable-modules=most
--enable-so
--with-mpm=worker
--enable-deflate
--enable-rewrite
make &&make install
3.Démarrez le service apache :
1) Vérifiez si la syntaxe apache est réalisable : [root@localhost local]# /application/apache/bin/apachectl -t
2) Démarrez le service apache : [root@localhost local]# /application/apache/bin/apachectl start
3) Vérifiez si le service apache est démarré : lsof -i:80 ou ps -ef|grep apache
ça marche indique le succès
Si ce n'est pas ok vérifiez les ports, le pare-feu, selinux, traitez la commande
strace pour tracer le processus
Modifiez le contenu compilé sous /application/apache/htdocs/ et il y a index.html
3./application/apacheStructure des répertoires
optimisation Apache 1. Mettre root@ localhost conf]# vi Ajoutez un signe - devant l'index dans httpd.conf ou supprimez-le directement
/application/apache/conf/extra Trois fichiers clés
Hôte virtuel
1. Hôte virtuel : lors du déploiement de plusieurs sites, chaque site souhaite utiliser un nom de domaine et un répertoire de site différents, ou un port différent, ou une IP différente. Un hôte virtuel est requis. .
En un mot, pour configurer plusieurs sites pour un service http, une machine virtuelle est nécessaire.
Classification des machines virtuelles :
a. Basée sur le nom de domaine
b. 🎜>IP
2. Construire une machine virtuelle (basée sur le nom de domaine)
Nom de domainewww.etiantian.org
/ var/html/wwwblog.etiantian.org /var/html/blogbbs.etiantian.org /var/html/bbs
Créer un fichier de page d'accueil :[root@localhost apache]# mkdir /var/html/{www,blog,bbs} -p
[root@localhost apache]# touch /var/html/{www, blog,bbs}/index.html[root@localhost apache]# pour le nom dans www blog bbs;do echo "http://$name.etiantian.org" >/var/html/$ name/index.html;done[root@localhost apache]# pour le nom dans le blog www bbs;do cat /var/html/$name/index.html;done vim /application/apache/conf/extra/httpd-vhosts.confCustomLog "logs/www-access_log" commun
[root@localhost extra]# /application/apache /bin/apachectl -t
Syntaxe OK
Vérifier la syntaxe
[root@localhost extra]# /application/apache/bin/apachectl Graceful Redémarrer Apache
vim /application/apache/conf/httpd.conf Ajoutez le contenu suivant à la dernière ligne :
Options FollowSymLinks
AllowOverride Aucun
Ordre autoriser, refuser
Autoriser de tous
La configuration ci-dessus vise à éviter les erreurs 403, puis à vérifier si la syntaxe est incorrecte (s'il y a des erreurs, cochez
Modifier Windows local system32 conduit les hôtes (192.168.76.128 www.etiantian.org blog.etiantian.org bbs.etiantian.org
)
[root@localhost extra]# grep "^Include" / application/apache/conf/httpd.conf
Inclure conf/extra/httpd-mpm.conf
Inclure conf/extra/httpd-vhosts.conf
1. mysql
Créer mysql : useradd mysql -g mysql -M -s /sbin/nologin
Compilation de
mysql :
./configure --prefix=/application/mysql5.1.72
- -with-unix-socket-path =/application/mysql5.1.72/tmp/mysql.sock
--localstatedir=/application/mysql5.1.72/data
--enable-assembler
-- activer-thread-safe-client
--with-mysqld-user=mysql
--with-big-tables
- -sans-debug
--with-pthread
--enable-assembler
--with-extra-charsets=complex
--avec -readline
--with-ssl
--with-embedded-server
--enable-local-infile
--with-plugins =partition,innobase
--with-mysqld-ldflags=-all-static
--with-client-ldflags=-all-static
yum -y install ncurses-devel(Solution d'erreur)
application root@localhost]# cd /home/cai/tools/
[root@localhost tools ]# cd mysql-5.1.72/support-files/
[root@localhost support-files]# cp my-small.cnf /etc/my.cnf
cp : s'il faut écraser "/etc/my.cnf" " ? y
[root@localhost support-files]# cd /etc/
[root@localhost etc]# moins my.cnf
[root@localhost etc]# mkdir /application/mysql/date -p
[root@localhost etc]# chown -R mysql.mysql /application/mysql
[root@localhost etc]#/application/mysql/ bin/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data/ --user=mysql
Installation des tables système MySQL...
170314 20:15 :22 [Avertissement] '--skip-locking' est obsolète et sera supprimé dans une prochaine version. Veuillez utiliser '--skip-external-locking' à la place.
OK
Remplissage. tables d'aide...
170314 20:15:22 [Avertissement] '--skip-locking' est obsolète et sera supprimé dans une prochaine version. Veuillez utiliser '--skip-external-locking' à la place. .
OK
Pour démarrer mysqld au démarrage, vous devez copier
support-files/mysql.server au bon endroit pour votre système
N'oubliez pas de définir un mot de passe pour l'utilisateur root MySQL !
Pour cela, démarrez le serveur, puis exécutez les commandes suivantes :
/application/mysql/bin/mysqladmin -u root password 'nouveau-mot de passe'
/application/mysql/bin/mysqladmin -u root -h localhost.localdomain password 'nouveau-mot de passe ' '
Vous pouvez également exécuter :
/application/mysql/bin/mysql_secure_installation
qui vous donnera également la possibilité de supprimer le test
Bases de données et utilisateur anonyme créés par défaut.
Fortement recommandé pour les serveurs de production.
Voir le manuel pour plus d'instructions.
Vous pouvez démarrer le démon MySQL avec :
cd /application/mysql /application/mysql/bin/mysqld_safe &
Vous pouvez tester le démon MySQL avec mysql-test-run.pl
cd /application/mysql/mysql-test ; perl mysql-test-run.pl
Veuillez signaler tout problème avec le script /application/mysql/scripts/mysqlbug !
Démarrer
mysql:/application /mysql/bin/ mysqld_safe & (Lors du démarrage du service, veuillez l'ajouter au démarrage automatique au démarrage) [root@localhost support-files]# netstat -lntup|grep mysql (Confirmez si le service est démarré)
Ajouter la ligne utilisateur à la fin de vi /etc/profile
Fermer :
arrêt de mysqladmin
/application/mysql/bin/ mysqladmin -u root -h localhost.localdomain password 'new-password' Définir le mot de passe
mysql -uroot -p (méthode pour se connecter à mysql après avoir défini le mot de passe)
2.
phpapache==》
libphp5.so sous phpLAMP
nginx php==》fcgi php-
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg- devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn -devel s'ouvre sl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers(Diverses bibliothèques qui doivent être installées)
yum install zlib libxml libjpeg freetype libpng gd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel -y (dans oldboy)
bibliothèque libiconv requise (compiler et installer)
compilation php :
./configure
--prefix=/application/php5.3.27
--with-apxs2 =/ application/apache/bin/apxs
--with-mysql=/application/mysql
--with-xmlrpc
--with-openssl
--with-zlib
--with-freetype-dir
--with-gd
--with-jpeg-dir
- -with-png-dir
--with-iconv=/usr/local/libiconv
--enable-short-tags
--enable-sockets
--enable-zend-multibyte
--enable-soap
--enable-mbstring
--enable-static
--enable-gd-native-ttf
--with-curl
--with-xsl
--enable-ftp
-- with-libxml-dir
[root@localhost php]# ll /application/apache/modules/
Utilisation totale 23908
-rw-r--r-- 1 racine racine 9262 15 avril 09:27 httpd.exp
-rwxr-xr-x 1 racine racine 24465701 15 avril 10:15 libphp5.so
[root@localhost php]# grep libphp5 /application/apache/conf/httpd.conf
LoadModule php5_module modules/libphp5.so
Fichier Configurationphp :
Il y en a deux, L'un est l'environnement de production L'autre est l'environnement de développement (environnement de test)
[root@localhost php-5.3.27]# diff php.ini-development php.ini -production
[root@localhost php-5.3.27]# cp php.ini-production /application/php/lib/php.ini
Résumé : les fichiers de configuration formels sont généralement affiché horsLOG, ne pas afficher LOG
Configurationapache prend en charge php
vim /application/apache/conf/httpd. conf Modifier la ligne 98 ServerName 192.168.76.128 : 80
vim /application/apache/conf/httpd.conf Ajouter deux lignes sous la ligne 311
Application AddType/ x-httpd-php .php .phtml
Application AddType/x-httpd-php-source .phps
démon utilisateur Il devrait également être modifié par les autres du bas (tout le monde sait que la valeur par défaut doit être modifiée)
la ligne 166 est modifiée en
[root @localhost conf]# diff httpd.conf httpd.conf.ori
67,68c67,68
< Groupe www --- > Démon utilisateur > Démon de groupe 168c168 < index.html --- > DirectoryIndex index.html 320,321d319 < .phtml Ajouterutilisateur www : useradd www -s /sbin /nologin -M [root@localhost conf]# /application/apache/bin/apachectl graceful Redémarrer le service Apache Test php dans la machine virtuelle construite avant/ var/html/blog vi index.php [root@localhost blog]# cat index.php phpinfo( ; apache réussi vi /var/html/blog/index.php //$link_id=mysql_connect('hostname','user','password'); $link_id=mysql_connect ( 'localhost','root','oldboy123') ou mysql_error(); if($link_id){ echo "mysql réussi par oldboy !" }else{ echo mysql_error(); } ?> L'interface supérieure indique que mysql réussit 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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Liaison statique (statique: :) implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.
