En este tutorial, le mostraremos cómo instalar LEMP en CentOS 6. Para aquellos de ustedes que no lo sabían, una pila de software LEMP es un grupo de software de código abierto que es normalmente se instalan juntos para permitir que un servidor aloje sitios web dinámicos y aplicaciones web. Este término es en realidad un acrónimo que representa el sistema operativo Linux, con el servidor web Nginx (que reemplaza el componente Apache de una pila LAMP). Los datos del sitio se almacenan en una base de datos MySQL (usando MariaDB), y el contenido dinámico es procesado por PHP.
Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple. mostrarle la instalación paso a paso de LEMP (Linux Nginx, MariaDB y PHP) en el servidor CentOS 6.
Instalar LEMP en CentOS 6
Paso 1. Primero, debe habilitar el repositorio EPEL en su sistema y asegurarse de que todos los paquetes estén actualizados.
## RHEL/CentOS 6 64-Bit ## wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -ivh epel-release-6-8.noarch.rpm
## RHEL/CentOS 6 32-Bit ## wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm rpm -ivh epel-release-6-8.noarch.rpm
Paso 2. Instalación de Nginx.
Instalaremos Nginx con yum, con el siguiente comando:
yum update yum install nginx
Inicie Nginx y agréguelo para que se inicie automáticamente en el inicio de su sistema usando:
service nginx start chkconfig nginx on
Puede verificar que Nginx realmente se está ejecutando abriendo su navegador web favorito e ingresando la URL http://dirección-de-su-servidor y necesita abrir el puerto 80 para que su servidor web sea accesible:
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT /etc/rc.d/init.d/iptables save
Paso 3. Configuración de Nginx y host virtual predeterminado.
Finalmente, necesitamos configurar nuestros hosts virtuales Nginx. Esto es mucho más simple de configurar que Apache. Eche un vistazo a la configuración a continuación, es ligeramente diferente de nuestra configuración predeterminada, pero explicaré los cambios a continuación:
nano /etc/nginx/conf.d/default.conf
# The default server # server { listen 80; server_name mydomain.com; location / { root /var/www/html; index index.php index.html index.htm; } error_page 404 /404.html; location = /404.html { root /usr/share/nginx/html; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { root /var/www/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
Paso 4. Instalación de MySQL.
Instala MySQL con el siguiente comando para comenzar la instalación:
yum install mysql mysql-server
Después de eso, agréguelo al inicio de su sistema e inicie el servidor MySQL usando los siguientes comandos:
chkconfig --levels 235 mysqld on service mysqld start
De forma predeterminada, MySQL no está reforzado. Puede asegurar MySQL usando el script mysql_secure_installation. Debe leer y debajo de cada paso cuidadosamente, que establecerá una contraseña de root, eliminará el anónimo usuarios, no permita el inicio de sesión raíz remoto y elimine la base de datos de prueba y acceda a MySQL seguro:
mysql_secure_installation
Para iniciar sesión en MySQL, use el siguiente comando (tenga en cuenta que es el mismo comando que usaría para iniciar sesión en una base de datos MySQL):
mysql -u root -p
Paso 5. Instalación de PHP.
Finalmente, ejecute los siguientes comandos para instalar PHP junto con otros módulos útiles:
yum install php php-common php-fpm php-mysql
Es posible que desee instalar algunas otras extensiones PHP requeridas por sus aplicaciones. La siguiente es una lista de los módulos PHP disponibles:
php-bcmath => A module for PHP applications using the bcmath library php-cli => Command-line interface for PHP php-common => Common files for PHP php-dba => A database abstraction layer module for PHP applications php-devel => Files needed for building PHP extensions php-embedded => PHP library for embedding in applications php-enchant => Human Language and Character Encoding Support php-gd => A module for PHP applications using the gd graphics library php-imap => A module for PHP applications that use IMAP php-intl => Internationalization extension for PHP applications php-ldap => A module for PHP applications that use LDAP php-mbstring => A module for PHP applications which need multi-byte string handling php-mysql => A module for PHP applications that use MySQL databases php-odbc => A module for PHP applications that use ODBC databases php-pdo => A database access abstraction module for PHP applications php-pear.noarch => PHP Extension and Application Repository framework php-pecl-apc => APC cache optimizing PHP intermediate code php-pecl-memcache => Extension to work with the Memcached caching daemon php-pgsql => A PostgreSQL database module for PHP php-process => Modules for PHP scripts using system process interfaces php-pspell => A module for PHP applications using pspell interfaces php-recode => A module for PHP applications using the recode library php-snmp => A module for PHP applications that query SNMP-managed devices php-soap => A module for PHP applications that use the SOAP protocol php-tidy => Standard PHP module provides tidy library support php-xml => A module for PHP applications which use XML php-xmlrpc => A module for PHP applications which use the XML-RPC protocol php-zts => Thread-safe PHP interpreter for use with the Apache HTTP Server
Configurar PHP-FPM:
nano /etc/php-fpm.d/www.conf
Reemplace los valores de usuario y grupo con Nginx como se muestra a continuación:
; Unix user/group of processes ; Note: The user is mandatory. If the group is not set, the default user's group ; will be used. ; RPM: apache Choosed to be able to access some dir as httpd user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx
Reinicie Nginx para que todos los cambios surtan efecto:
service nginx restart service php-fpm restart
Para probar PHP, cree un archivo de prueba llamado info.php con el contenido a continuación. Guarde el archivo, luego navegue hasta él para ver si PHP funciona:
nano /var/www/html/info.php
<?php phpinfo(); ?>
¡Felicitaciones! Ha instalado con éxito la pila LEMP. Gracias por usar este tutorial para instalar LAMP (Linux Nginx, MariaDB y PHP) en el sistema CentOS 6. Para obtener ayuda adicional o información útil, le Le recomendamos que consulte los sitios web oficiales de Nginx, MySQL y PHP.