Maison Opération et maintenance exploitation et maintenance Linux Icône Linux+Nginx+Mysql+Php, étapes de fonctionnement détaillées !

Icône Linux+Nginx+Mysql+Php, étapes de fonctionnement détaillées !

Jun 23, 2017 pm 02:17 PM
php 操作步骤 详解

LNMPIntroduction

LAMP(Linux apache mysql php)---ServiceWeb antérieur.

LNMP(Linux nginx mysql php)---Plus tendance et nouveau Le service webn connaît un taux d'utilisation croissant (très populaire en Chine).

Nginx (Engine X) est développé par des Russes et est open source www logiciel de service, le logiciel totalise 780K (très petit), c'est un statique (html, js, css, jpg, etc.) www Logiciel, petits fichiers statiques à forte concurrence et occupant très peu de ressources.

NginxUtilisez la plateforme (linux unix windows sont OK) et apacheIdem.

Nginx fonctions :

un.www webservice---http 80

b.Équilibrage de charge (proxy inverseproxy)

c.web cache

Avantages de

nginx :

1. Configuration simple et flexibilité.

2.Concurrence élevée (petits fichiers statiques), statique 1-2W.

3.Occupe peu de ressources, 2W développe simultanément 10 services de thread et consomme des centaines de mégaoctets de mémoire .

4.Il existe de nombreux types de fonctions (proxy de cache Webproxy), et chaque fonction n'est pas très puissante.

5. prend en charge le modèle epoll, ce qui permet à nginx de prendre en charge une simultanéité élevée. Il y a une différence entre

6.nginx avec des services dynamiques et apache.

7.Utilisez nginx pour limiter la vitesse de IP. Le nombre de connexions peut être limité.

Principe de mise en œuvre : nginx (apache)- -php--mysql

nginx Scénarios d'application :

1. service statique (photos, vidéos), l'autre lighttpd (la communauté n'est pas active). Concurrence : 1-3W, html, js, css, .flv

2.Service dynamique : le mode nginx+fastcgi exécute php, jsp. Concurrence : 500-1500, similaire à apache+php, lighttpd+fcgi php

3.Proxy inverse, équilibrage de charge. Pour les commandes inférieures à PV2000W, vous pouvez utiliser nginx en tant qu'agent. haproxy, F5, a10

4. cache Service, SQUID, VARNI.

nginx et autres serveurs web :

1) Apache

a. Stable et puissant

b Le mode Prefork élimine les frais généraux de création de processus et offre des performances élevées.

c.Lors du traitement de données commerciales dynamiques, car elles sont associées au moteur back-end et à la base de données, le goulot d'étranglement n'est pas dans Apache lui-même

d. Relativement plus de ressources système sont consommées en cas de concurrence élevée

e.Basé sur le modèle traditionnel select

2) nginx

a.Basé sur le modèle asynchrone IO (epoll, kqueue), a de fortes performances et peut prendre en charge des dizaines de milliers de concurrences

b Très bon support pour les petits fichiers, hautes performances (limitées aux petits fichiers statiques)

c. Beau code, la bibliothèque d'extensions doit être compilée pour le programme principal

d Consommation de ressources relativement faible

3) Lighttpd (Baidu Tieba, Douban)

a.Basé sur un modèleIOasynchrone, les performances sont similaires à celles de nginx

b.Le l'extension est le mode SO, qui est meilleur que nginxSoyez flexible

c.L'utilisation globale est faible, la sécurité n'est pas aussi bonne queapacheetnginxBon

d.FichierURL Le cryptage des adresses peut être réalisé via le plug-in (mod secdownload)

Comment choisir serveur web (recommandé) dans les scénarios de production d'entreprise :

Entreprise statique : pour une simultanéité élevée, utilisez nginx ou lighttpd

Entreprise dynamique : utilisez nginx et apache Les deux

ont les deux services dynamiques et statiques : nginx et apache tous deux Oui, sélectionnez

Activité externenginx, Métier interneapache

Installation, configurationnginx

1.Préparation de l'installation : [root@localhost ~]# yum install pcre* -y

[root@localhost ~]# yum install openssl* -y

2.Compiler :

./configure --prefix=/application/nginx1 12.0

--user=nginx

--group=nginx

--with-http_stub_status_module

--with-http_ssl_module

3.

Vérification de démarrage :

[root@localhost application]# /application/nginx/sbin/nginx -t

nginx : la syntaxe du fichier de configuration /application/nginx1.12.0/conf/nginx.conf est ok

nginx : le test du fichier de configuration /application/nginx1.12.0/conf/nginx.conf est réussi

[root@localhost application]# /application/nginx/sbin/nginx

[root@localhost application]# netstat -lntup|grep nginx (Aussi 80 Le port peut également être vérifié)

L'apparence de cette interface indique succès

[root@localhost application]# vim /application/nginx/html/index.html Modifier le contenu de la page d'accueil

4.À propos des modules nginx

1)Modules de base Nginx (obligatoires), y compris les Événements principaux

2)Modules HTTP standard (bien que cela ne soit pas obligatoire, il sera installé par défaut et il n'est pas recommandé de le modifier), dont Core Acess FastCGI Gzip (Module de compression, optimisation des performances) LOG (Module de journal) Réécriture du proxy (URL module de réécriture) Amont (module d'équilibrage de charge) etc.

Astuce : Dans les conditions par défaut, les deux ensembles de modules seront installés. Modifier le fichier de configuration consiste principalement à modifier les paramètres du module en fonction des fonctions du groupe de modules 2. Les paramètres du module peuvent être consultés sur le site officiel.

5.nginx configuration

[root@localhost conf]# egrep -v "#|^$" nginx. .default >nginx.conf (supprimez la ligne de commentaire #)

[root@localhost conf]# vim nginx.conf (cairui.org est un alias)

[root@localhost conf ]# mkdir /application/nginx/html/www

[root@localhost conf]# touch /application/nginx/html/www/index.html

[root@localhost conf] # vim /application/nginx/html/www/index.html

[root@localhost conf]# /application/nginx/sbin/nginx -t

nginx : le fichier de configuration /application /nginx1.12.0/conf/nginx.conf la syntaxe est ok

nginx : fichier de configuration /application/nginx1.12.0/conf/nginx.conf le test est réussi

[root@localhost conf] # /application/nginx/sbin/nginx -s reload

Modifiez le fichier windowslocalhosts pour vous assurer qu'il est dans gagnerDans l'invite de commande, vous pouvez pingpasser depuis l'hôte virtuel, puis accéder à la page Web pour afficher

Ajouter la balise d'état serveur :

[root@localhost conf]# vim /application/nginx/conf /nginx.conf

## STATUT

Serveur {

Écoute 80

Server_name Status.Cairui.org;

emplacement / {

stub_status on;

access_log off;

}

}

atWinLocalhosts le fichier doit également ajouter ,

Résolution de la liaison de nom de domaine malveillant :

[root@localhost conf]# vim /application/nginx/conf/nginx.conf(doit être placé en premier serveur)

serveur {

écouter 80 ;

emplacement / {

tout refuser ;

}

}

Activer la fonction de journalisation :

[root@localhost conf]# cat /application/nginx/conf/nginx.conf.default (Trouver le format du journal)

#log_format main '$remote_addr - $remote_user [$time_local] "$request" '

# $body_bytes_sent "$ http_referer" '

# '"$http_user_agent" "$http_x_forwarded_for"';

#access_log logs/access.log main;

Copier dans nginx.conf et supprimer le commentaire

Le format du journal des erreurs est placé en haut

Logiciel d'analyse du log nginx : syslog, rsyslog, Awstats, scribe, kafka

Mysql

mysqlMéthode d'installation :

5.1---Compiler et installer configurer, make, make install

5.5--- compiler Installer cmake, make, make install (peut être installé directement avec le package binaire , décompressez-le simplement)

1.Installez mysql

[root@localhost conf]# useradd mysql -s /sbin/ nologin -M

[root@localhost tools]# tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz

[root@localhost tools]# mv mysql-5.5 .32-linux2.6-x86_64 /application/mysql5.5.32

[root@localhost tools]# ln -s /application/mysql5.5.32/ /application/mysql

[root@ outils localhost]# chown -R mysql.mysql /application/mysql/data/

[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/application/mysql/ - -datadir=/application/mysql/data/ (libaio doit être installé avant la compilation)

[root@localhost mysql]# cp support -files/mysql.server /etc/init.d/mysqld

[root@localhost mysql]# vim /etc/init.d/mysqld

[root@localhost mysql]# cp support-files/my-small.cnf /etc/my.cnf (Le fichier de configuration de chaque version est différent )

cp : Est-ce qu'il écrase "/etc/my.cnf" ? y

[root@localhost mysql]# vim /etc/profile

[root@localhost mysql]# service mysqld start

Démarrage de MySQL.. SUCCÈS !

[root@localhost mysql]# mysql

Optimisation de la base de données :

mysql> afficher les bases de données

mysql> supprimer le test de la base de données ;

mysql> 🎜>

mysql> drop user''@localhost;

[root@localhost mysql]# mysql -uroot -pnew-password

Changer le mot de passe (entrez mysqlModifier)mysql> définir le mot de passe pour root@localhost = password('123');

PHP

php sous LNMP :

apache----

libphp5.so

nginx---

fcgi php-fpm port9000(Baidu)

Installationphp avant de vous assurer que mysql, nginx fonctionnent normalement[root@localhost mysql]# netstat -lntup|egrep "nginx|mysql"

1.

Logiciel qui doit être installé

Installerlibiconv (./configure --prefix=/usr/local/libiconv)

Installer libmcrypt (Non requis, installation recommandée) Il s'agit d'une bibliothèque cryptée

./configure

make

make install

sleep2

/sbin/ldconfig

cd libltdl/

./configure --enable-ltdl-install

make

make install

cd ../../cd

Installermhash

./configure

make

make install

sleep 2

cd ../

rm -fr /usr/lib64/libmcrypt.*

rm -fr /usr/lib64/libmhash*

ln -s /usr/local/lib64/libmcrypt.la /usr/lib64/libmcrypt.la

ln - s /usr/ local/lib64/libmcrypt.so /usr/lib64/libmcrypt.so

ln -s /usr/local/lib64/libmcrypt.so.4 /usr/lib64/libmcrypt.so.4

ln -s /usr/local/lib64/libmcrypt.so.4.4.8 /usr/lib64/libmcrypt.so.4.4.8

ln -s /usr/local/lib64 /libmhash.a /usr/lib64/libmhash.a

ln -s /usr/local/lib64/libmhash.la /usr/lib64/libmhash.la

ln -s /usr /local/lib64 /libmhash.so /usr/lib64/libmhash.so

ln -s /usr/local/lib64/libmhash.so.2 /usr/lib64/libmhash.so.2

ln -s /usr/local/lib64/libmhash.so.2.0.1 /usr/lib64/libmhash.so.2.0.1

ln -s /usr/local/bin/libmcrypt- config /usr/ bin/libmcrypt-config

Installermcrypt

/sbin/ldconfig

./configure LD_LIBRARY_PATH= /usr/local /lib

make

make install

cd ../

dormir 2

2.

Installerphp

[root@localhost tools]# yum install libxslt* -y

./configure

--prefix=/ application/php5.6.30

--with-mysql=/application/mysql

--with-iconv-dir=/usr/local/libiconv

--avec -freetype-dir

--with-jpeg-dir

--with-png-dir

--with-zlib

--with -libxml-dir =/usr

--enable-xml

--disable-rpath

--enable-safe-mode

-- activer-bcmath

--enable-shmop

--enable-sysvsem

--enable-inline-optimization

--with-curl

--with-curlwrappers

--enable-mbregx

--enable-fpm

--enable-mbstring

- -avec-mcrypt

--avec-gd

--enable-gd-native-ttf

--avec-openssl

--avec -mhash

--enable-pcntl

--enable-sockets

--with-xmlrpc

--enable-zip

-- activate-soap

--enable-short-tags

--enable-zend-multibyte

--enable-static

--with- xsl

--with-fpm-user=nginx

--with-fpm-group=nginx

--enable-ftp

-- activate-opcache=no

ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib64

Gestion des erreurs :

, ,


3.php

Configuration

[root@localhost php-5.3.27]# cp php.ini- production /application/php/lib/php.ini

Télécharger directement

[root@localhost etc] # /application/ php/sbin/php-fpm -t

[root@localhost etc]# /application/php/sbin/php-fpm

Démarrer au démarrage

cat >>/etc/rc.local<

#nginx+php-fpm par cairui en 2017

/etc/init.d/mysqld start

/application/php/sbin/php-fpm

/application/nginx/sbin/nginx

EOF

[root@134 extra]# cat /application/nginx/conf/extra/bbs.conf

serveur {

écoute 80;

nom_serveur bbs.caimengzhi.org;

racine racine html/bbs;

index index .html index.htmi index.php;

emplacement ~ .*.(php|php5)?$ #Aucun répertoire spécifié dans {} à cette fois Si c'est le cas, lisez simplement le fichier php directement sous html/bbs

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

include fastcgi.conf;

}

}

[root@localhost conf]# cd /application/nginx/html/www/

[root@localhost www]# vim index.php

[root@localhost www]# /application/nginx/sbin/nginx -t

[root@localhost www]# / application/ nginx/sbin/nginx -s reload

wiki

logiciel

[root@localhost www]# mysql

mysql> créer une base de données wiki;

mysql> accorder tout sur wiki.* à wiki@'localhost' identifié par 'wiki' ;

mysql> vider les privilèges ;

mysql> quitter

(wikiTéléchargerHDwiki)

[root@localhost www]# wget

(note www)

[root@localhost www] # décompresser download.php?n=HDWiki-v6.0GBK-20170209.zip

[root@localhost www]# rm -f download.php?n=HDWiki-v6.0GBK-20170209.zip

[root@localhost www]# mv hdwiki/* .

[root@localhost www]# cd ../

[root@localhost html]# chown -R nginx .nginx www/

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

Video Face Swap

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 !

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)

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

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.

7 fonctions PHP que je regrette de ne pas connaître auparavant 7 fonctions PHP que je regrette de ne pas connaître auparavant Nov 13, 2024 am 09:42 AM

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.

Comment configurer Visual Studio Code (VS Code) pour le développement PHP Comment configurer Visual Studio Code (VS Code) pour le développement PHP Dec 20, 2024 am 11:31 AM

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

Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Apr 05, 2025 am 12:04 AM

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,

Programme PHP pour compter les voyelles dans une chaîne Programme PHP pour compter les voyelles dans une chaîne Feb 07, 2025 pm 12:12 PM

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

Comment analysez-vous et traitez-vous HTML / XML dans PHP? Comment analysez-vous et traitez-vous HTML / XML dans PHP? Feb 07, 2025 am 11:57 AM

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

Expliquez la liaison statique tardive en PHP (statique: :). Expliquez la liaison statique tardive en PHP (statique: :). Apr 03, 2025 am 12:04 AM

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 PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Quelles sont les méthodes PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Apr 03, 2025 am 12:03 AM

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.

See all articles