1. Installez nginx
Une commande :
use=fastcgimerge nginx
Créez de nouveaux utilisateurs et groupes :
groupadd www
useradd www -g www
nginx Après l'installation, le groupe nginx et l'utilisateur nginx seront ajoutés par par défaut, mais je suis toujours habitué à créer un nouveau groupe www et un nouvel utilisateur www pour servir d'utilisateurs du service http. Si le serveur http est remplacé par apache ou lighttpd à l'avenir, le nom d'utilisateur et le groupe d'utilisateurs peuvent rester inchangés.
2. Installez mysql
Mysql doit être installé avant d'installer php, car la fonction d'opération mysql dans php nécessite la prise en charge des fichiers d'en-tête et des bibliothèques mysql.
emerge dev-db/mysql
Initialisez la base de données :
Le chemin par défaut de la base de données est /var/lib/mysql L'installation de cet article le place dans /work/db/3306/data.
Copiez le code Le code est le suivant :
mkdir -p /work/db/3306/data
mysql_install_db --basedir=/usr --datadir=/work/db/3306/data --user=mysql
Modifier le fichier de configuration :
vim /etc/mysql/my.cnf
Modifier datadir en :
datadir = /work/db/3306/data
Démarrer MySQL :
/etc/init.d/mysql start
Modifier le mot de passe root :
mysqladmin -uroot password hily
Test de la base de données :
mysql -uroot -p
Affichage :
gentoo setup # mysql -uroot -p
enter password:
bienvenue dans le moniteur mysql, les commandes se terminent par ; g.
votre identifiant de connexion MySQL est 2
version du serveur : 5.0.84-log gentoo linux mysql-5.0.84-r1
tapez 'help;' ou 'h' pour l'aide, tapez 'c' pour effacer l'entrée actuelle. déclaration.
mysql>
Test réussi !
3. Installez php
Pour exécuter php en mode fastcgi, vous devez installer php-fpm.
Actuellement, la dernière version de php qui nécessite l'installation de php-fpm sous forme de patch est la 5.3.0. Il sera possible d'intégrer directement php-fpm dans la version php 5.3.2.
Ici, j'utiliserai php 5.3.0 pour l'installation.
Parce que le répertoire dans gentoo n'a pas encore intégré le portage de php-fpm, ce qui suit est donc directement installé via la compilation du code source.
Téléchargez php 5.3.0 :
wget http://cn.php.net/distributions/php-5.3.0.tar.bz2
Téléchargez le patch php-fpm :
wget http://php-fpm.org/ downloads/php-5.3.0-fpm-0.5.12.diff.gz
Extraire php et appliquer le patch fpm :
tar jxf php-5.3.0.tar.bz2
gzip -cd php-5.3.0-fpm- 0.5.12.diff.gz | patch -d php-5.3.0 -p1
Installez les bibliothèques requises pour php (selon vos propres besoins) :
emerge libpng
emerge jpeg
emerge freetype
use="png jpeg truetype "merge gd
Ou directement :
use="png jpeg truetype"merge gd
Configurer et compiler php (selon vos propres besoins) :
Copiez le code Le code est le suivant :
cd php-5.3. 0
./configure --prefix= /usr/local/php --with-config-file-path=/usr/local/php/etc
--with-mysql=/usr --with-mysqli=/usr /bin/mysql_config --enable-fpm --enable-sockets
--enable-pdo --with-pdo-mysql=/usr --with-gd --with-jpeg-dir --with-png-dir
--with-freetype-dir -- with-zlib
make && make install
fichier de configuration php :
Copier le code Le code est le suivant :
cp php.ini-production /usr/local/php/ etc/php.ini
Fichier de configuration php-fpm :
vim /usr/local/php/etc/php-fpm.conf
Modifiez l'adresse_écoute en adresse du socket (le socket est plus efficace que ip:port) :
< value name="listen_address">/tmp/php-fpm .sock
Modifier le groupe d'utilisateurs et le nom d'utilisateur :
Copier le code Le code est le suivant :
utilisateur Unix des processus
groupe de processus Unix
Modifier le mode d'exécution de php-fpm en mode de type Apache :
Copier le code Le code est le suivant :
startservers, minspareservers et maxspareservers sont définis en fonction des besoins réels. Il s'agit d'une machine virtuelle, donc ce n'est pas le cas. Il n’est pas nécessaire que ce soit trop grand.
Script de démarrage php-fpm :
cp /usr/local/php/sbin/php-fpm /etc/init.d/php-fpm
Démarrer php-fpm
/etc/init.d/php-fpm start
Ajouter un service de démarrage
Copier le code Le code est le suivant :
rc-update add nginx default
rc-update add mysql default
rc-update add php-fpm default
Test nginx+php
Ajouter un test répertoire du site :
Copiez le code Le code est le suivant :
mkdir -p /work/www/test
echo " /work/www/test/index .php
Ajouter un test La configuration nginx du site :
vim /etc/nginx/nginx.conf
Commentez la section serveur et ajoutez :
include sites/*.enable;
Le fichier de configuration de chaque site sera enregistré sous forme de fichier indépendant dans le répertoire /etc/nginx/sites pour faciliter la gestion et la maintenance.
mkdir /etc/nginx/sites
vim /etc/nginx/test.enable
test.enable La configuration est la suivante :
Copier le code Le code est le suivant :
serveur {
écoute 80;
nom_serveur test.local;
access_log /work/www/logs/test.access.log main;
error_log /work/www/logs/test.error.log;
location / {
racine /work/www/test;
index index.html index.htm index.php;
}
emplacement ~ .php$ {
root /work/www/test;
fastcgi_index index.php;
fastcgi_param script_filename $document_root$fastcgi_script_name;
include fastcgi _params;
fastcgi_pass unix :/tmp/php-fpm .sock;
}
}
Créez un nouveau répertoire de journaux de stockage :
mkdir /work/www/logs
Ajoutez un enregistrement dans les hôtes locaux :
192.168.1.10 test.local
192.168 .1.10 est l'adresse IP de ma machine Gentoo.
Recharger la configuration de nginx
/etc/init.d/nginx reload
Visite :
http://test.local/
Si les informations phpinfo normales sont affichées, l'installation est terminée.
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!