Base de Coñecemento Instrucións sinxelas para traballar co servizo Profitserver
Páxina Base de Coñecemento Como configurar un servidor web (Apache-PHP-MySQL/MariaDB) en Linux

Como configurar un servidor web (Apache-PHP-MySQL/MariaDB) en Linux


Neste artigo, darémosche instrucións paso a paso sobre como configurar o ambiente web nun servidor con Linux. Primeiro de todo, debes entender que un servidor web típico consta de algúns compoñentes interactivos:

  • Servidor HTTP
  • intérprete de linguaxe de programación
  • Sistema de xestión de bases de datos (DBMS)

Para xestionar o seu sitio web tamén terá que configurar un sistema de xestión de contidos (CMS), unha interface web para a xestión de bases de datos e acceso FTP.

Consideremos a configuración dunha configuración moi popular Apache-PHP-MySQL (MariaDB) en Linux. Tamén instalaremos o servidor ftp vsftpd, phpMyAdmin - unha interface web para a xestión de bases de datos e un sistema de xestión de contidos WordPress.

Para comezar por favor pedir servidor VPS or servidor dedicado. Por exemplo, usamos un servidor virtual con enderezo IP estático que executa Ubuntu Server 18.04. Todos os comandos foron executados polo usuario root.

Configuración do servidor HTTP Apache

1. instalación

apt install apache2

Cando remate a instalación, abra un navegador e comprobe "http://[enderezo_ip_servidor]"

Configuración do servidor HTTP Apache

Se ves unha páxina de benvida como esta na captura de pantalla anterior, isto significa que o teu servidor HTTP está a funcionar.

2. Crea unha páxina de proba

O directorio raíz predeterminado para o sitio web é "/var/www/html". Aquí podes atopar a páxina de benvida que acabas de ver. Imos crear un directorio separado "/var/www/sites" para hosts virtuais e un subcartafol "/var/www/sites/site1" coa páxina de índice do seu sitio web de proba.

cd /var/www/

mkdir -p sites/site1

echo "<H1>Welcome</H1>" > sites/site1/index.html

No resultado o ficheiro "/var/www/sites/site1/index.html" debe conter só unha liña de código html:

<H1>Welcome</H1>

3. Configuración do servidor Apache

Os ficheiros de configuración dos sitios web están en "/etc/apache2/sites-available/" catálogo. Imos crear un ficheiro de configuración para un novo host virtual tomando a configuración predeterminada do ficheiro "000-default.conf" como base.

cd /etc/apache2/sites-available/

cp 000-default.conf site1.conf

Abra o ficheiro "site1.conf" e cambia o "DocumentRoot" atributo. Pon a ruta do teu sitio web como valor, así no noso caso é "/var/www/sites/site1"

Configuración do servidor Apache

Nesta fase non necesitamos configurar o funcionamento simultáneo de varios sitios web, polo que podemos desactivar o sitio web predeterminado e activar o novo sitio. Volve cargar a configuración do servidor para aplicar os cambios.

a2dissite 000-default

a2ensite site1

systemctl reload apache2

Abra a ligazón "http://[enderezo_ip do servidor]" de novo e asegúrese de que en lugar da páxina de benvida predeterminada temos a nosa nova páxina.

Configuración do servidor Apache

Rematamos a configuración do noso servidor HTTP e podemos pasar ao seguinte paso.

Configuración do servidor FTP

1. instalación

Imos instalar o noso servidor ftp e un paquete adicional "db-util", que necesitaremos configurar usuarios virtuais

apt install vsftpd db-util

2. Crear unha conta local

O servidor vsftpd permítenos configurar os permisos de acceso dunha forma moi flexible. Para as nosas tarefas, necesitamos proporcionar aos usuarios de ftp o seguinte:

  • acceso total aos contidos de “/var/www/sites/”;
  • desactiva todo o que está arriba “/var/www/”;
  • conexión cunha conta virtual;

Crea unha conta local "virtual" sen permiso de inicio de sesión pero con acceso ao cartafol de inicio “/var/www/”. Esta conta será usada polos usuarios de ftp para conectarse ao servidor

useradd -d /var/www virtual

"Raíz" será o propietario do "/var/www" cartafol por defecto. Para que os usuarios de ftp poidan modificar o contido dos sitios web, cambiemos o propietario de “/var/www/sites/” incluíndo subcartafoles de "virtual".

chown -R virtual:root /var/www/sites

Como resultado, o usuario "virtual" poderá ver o contido de “/var/www/” e escribe no “/var/www/sites/” subcarpeta.

3. configuración

A configuración principal está no ficheiro "/etc/vsftpd.conf", así que imos abrilo e editámolo do seguinte xeito:

#enable virtual users

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=virtual
#configure permission

write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

anon_world_readable_only=NO

anon_umask=0022

chroot_local_user=YES
#launch settings

listen=YES

pasv_min_port=30000

pasv_max_port=30999

4. Crea a base de datos

Necesitará unha base de datos para almacenar os datos das contas virtuais.

En primeiro lugar, imos crear un ficheiro de texto sinxelo "usuarios.txt" no cartafol de inicio e garda os detalles de acceso (inicio de sesión e contrasinal) dos usuarios virtuais en todas as outras liñas. Por exemplo, necesitaremos un usuario virtual co inicio de sesión "ftp" e contrasinal "Qwe123". Entón o ficheiro terá o seguinte aspecto:

ftp

Qwe123

Imos crear a base de datos

db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db

Imos modificar o ficheiro PAM predeterminado "/etc/pam.d/vsftp" como segue:

auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

Teña en conta que o camiño do "pam_userdb.so" A biblioteca pode ser diferente, pero podes cambiala se é necesario.

Volve cargar o servidor vsftpd para aplicar os cambios.

systemctl restart vsftpd

Rematamos a configuración do servidor FTP.

Detalles da conexión:

  • ftp://[enderezo_ip_servidor]
  • inicio de sesión: ftp
  • contrasinal: Qwe123

Configuración do servidor PHP

1. Instalación de PHP

Hoxe a última versión estable de PHP é php 7.4.5 que non está incluído nos repositorios oficiais de Ubuntu. Conectemos un repositorio de terceiros e instalemos a última versión de PHP.

apt update

apt install software-properties-common

add-apt-repository ppa:ondrej/php

apt update

apt install php7.4

2. Comprobe

Para que PHP se execute, o ficheiro de páxina web debería ter ".php" extensión. Cambiamos o nome da nosa páxina de proba:

cd /var/www/sites/site1/

mv index.html index.php

Engade a seguinte liña php ao ficheiro "/var/www/sites/site1/index.php", polo que o ficheiro debería verse así:

<H1>Welcome</H1>

<?php

phpinfo();

?>

Garda os cambios e comproba o resultado no navegador.

Configuración do servidor PHP: instalación e comprobación

Se ves o resultado da función "phpinfo()", o intérprete PHP funciona correctamente. Agora imos pasar ao seguinte paso.

Configuración de MySQL (MariaDB).

1. instalación

Instalemos MariaDB e un módulo PHP para MySQL e despois recarguemos Apache.

apt install mariadb-server php-mysql

systemctl restart apache2

Actualiza a páxina de proba e vai á sección PDO na táboa de configuración de PHP. Se podes atopar a sección "PDO_mysql", entón significa que o controlador para Mysql está instalado correctamente.

Instalación e configuración de MySQL (MariaDB).

A continuación, teremos que facer a configuración de seguranza inicial de MariaDB e establecer o contrasinal para o "Raíz" usuario, desactive o acceso remoto e elimine todas as contas de convidados.

mysql_secure_installation

No primeiro paso, temos que entrar no "raíz" contrasinal do usuario para acceder ao DBMS ou prema Intro se non hai contrasinal. Xa que non hai contrasinal definido para o "raíz" usuario despois da instalación, simplemente prema "Entrar".

Teña en conta que en MariaDB xa hai contas propias que non teñen nada que ver coas contas do SO. Polo tanto, o único usuario co que tratamos en MariaDB é "raíz".

  MySQL: crea unha conta e configura un contrasinal

Despois diso, o configurador pediranos que establezamos o contrasinal para o usuario root. Tipo "Y" para confirmar e introducir o novo contrasinal. No noso caso, é "Qwe123"

  MySQL: crea unha conta e configura un contrasinal

responder "Y" a todas as demais preguntas ata o final.

A configuración está feita!

Detalles de acceso a MariaDB:

  • Inicio de sesión: root
  • Contrasinal: Qwe123

Configuración de phpMyAdmin

1. instalación

Imos instalar a extensión necesaria para PHP - mbstring.

apt install php-mbstring

No repositorio oficial só hai unha versión desactualizada de phpMyAdmin, así que imos instalar a nova manualmente.

Abre o sitio web oficial do proxecto "https://www.phpmyadmin.net/” e descarga o arquivo máis recente.

Instalación e configuración de phpMyAdmin

Copia o arquivo no servidor no ficheiro “/var/www/sites/” cartafol usando calquera cliente ftp.

Desarquiva o cartafol e renomea a "phpMyAdmin". Non esquezas instalar o "descomprimir" utilidade. Podes eliminar o arquivo despois de desarquilo.

apt install unzip

cd /var/www/sites/

unzip phpMyAdmin-5.0.2-all-languages.zip

mv phpMyAdmin-5.0.2-all-languages phpMyAdmin

rm phpMyAdmin-5.0.2-all-languages.zip

Crea o seguinte cartafol "/var/www/sites/phpMyAdmin/tmp" para ficheiros temporais e permitir o acceso para todos. Se non o fas, phpMyAdmin informará de que o acceso foi denegado ao cartafol temporal.

cd /var/www/sites/phpMyAdmin/

mkdir tmp

chmod 777 tmp

2. Crea un alias

Xa que phpMyAdmin non é un host virtual separado e está situado fóra do directorio raíz, configuremos o alias.

Abra o ficheiro "/etc/apache2/mods-available/alias.conf" e engade esta liña:

Alias /pma “/var/www/sites/phpMyAdmin"

dentro desta sección:

<IfModule alias_module>

</IfModule>
phpMyAdmin: crea un alias

Recarga Apache para aplicar os cambios.

systemctl reload apache2

O alias está definido, polo que podemos acceder a phpMyAdmin aquí "http://[enderezo_ip_servidor]/pma".

3. Prepare a base de datos

Dado que restrinximos o uso do usuario root durante a configuración inicial de MariaDB, teremos que crear unha nova conta con todos os permisos que se utilizarán para acceder a phpMyAdmin.

Ademais, para activar funcións adicionais de phpMyAdmin necesitaremos unha base de datos de servizos e unha conta para acceder a ela.

Imos crear as contas

mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit

Teña en conta que o nome da base de datos na segunda solicitude aparece nas chispas traseiras "... ON `phpmyadmin`.* PARA 'pma'@'localhost' IDENTIFICADO POR...”,

Como resultado, haberá dúas contas creadas en MariaDB:

  • Inicio de sesión: pma, contrasinal: Qwe123Acceso completo, empregarase para iniciar sesión en phpMyAdmin
  • Inicio de sesión: pmaservice, Contrasinal: Qwe123A conta de servizo é necesaria para que funcionen funcións adicionais

No seguinte paso, estableceremos estes detalles no ficheiro de configuración "config.inc.php".

A continuación, teremos que importar a base de datos do ficheiro "phpMyAdmin/sql/create_tables.sql".

Importémolo coa axuda de phpMyAdmin.

Abra a ligazón "http://[enderezo_ip_servidor]/pma"

Introduza o inicio de sesión "pma" e contrasinal "Qwe123"

Ir a "Importar", Prema "Seleccionar ficheiro" e seleccione o ficheiro "sql/create_tables.sql" no directorio raíz de phpMyAdmin. Suponse que debe haber o cartafol no teu PC "phpMyAdmin" con arquivos. Desarquivao se é necesario.

configuración de phpmyadmin

prema "Seguinte" para comezar a importar.

4. configuración

Imos copiar o ficheiro de configuración do modelo

cd /var/www/sites/phpMyAdmin/

cp config.sample.inc.php config.inc.php

Imos abrir o ficheiro de configuración "/var/www/sites/phpMyAdmin/config.inc.php" e fai os seguintes cambios:

Establece un valor aleatorio de 32 caracteres para o atributo "$cfg['blowfish_secret']". Use calquera xerador de contrasinais para iso.

Como instalar e configurar WordPress nun servidor Linux

Elimina os comentarios de todas as liñas do "Configuración de almacenamento de configuración de phpMyAdmin" sección e configure o inicio de sesión e o contrasinal da conta de servizo de MariaDB para o "controlador" "controlpass" atributos en consecuencia. No noso caso, é pmaservice Qwe123.

Como instalar e configurar WordPress nun servidor Linux

Garda os cambios.

Detalles de acceso para phpMyadmin:

  • http://[server’s_ip_address]/pma/
  • Inicio de sesión: pma
  • Contrasinal: Qwe123

Como instalar e configurar WordPress nun servidor Linux

1. Paquete de WordPress e colocación de ficheiros

Vaia ao sitio web oficial de WP "https://ru.wordpress.org/” e descarga o arquivo no teu PC local.

Cargue o arquivo ao servidor no “/var/www/sites/” cartafol e desarquivalo no ficheiro "wordpress”Cartafol.

Copia o contido do “/var/www/sites/wordpress/” cartafol raíz do "/var/www/sites/site1/" web.

Xa que copiamos os ficheiros a través da consola con permisos de root, imos cambiar o propietario do “/var/www/sites/” cartafol incluíndo o contido de "virtual". Isto é necesario para habilitar o acceso total para a conexión ftp a través do cliente.

cd /var/www/sites/

tar -xzvf wordpress-5.4-ru_RU.tar.gz

cp -R wordpress/* site1/

chown -R virtual:root /var/www/sites

2. Crea unha base de datos para WordPress

Inicie sesión en phpMyAdmin e prema en "Crear base de datos". Especifique un nome de base de datos arbitrario, no noso caso "wordpress_db" e prema no botón "Crear".

Crea unha base de datos para WordPress

Seleccione a nova base de datos na sección esquerda e prema "Privilexios"

Crea unha base de datos para WordPress

A continuación, fai clic en "Engadir conta de usuario".

Introduza o login e o contrasinal (wpservice / Qwe123) na xanela aberta, comprobe "Concede todos os privilexios en wordpress_db" e prema "Seguinte"

Engadir conta de usuario na base de datos para WordPress

Na páxina seguinte fai clic "Cancelar todo" para restablecer todos os privilexios no nivel de base de datos e prema "Seguinte".

Engadir conta de usuario na base de datos para WordPress

3. Configuración de WordPress nun servidor Linux

Vaia ao directorio raíz do seu sitio web e copie o ficheiro de configuración do modelo

cd /var/www/sites/site1/

cp wp-config-sample.php wp-config.php

Abra a "wp-config.php" e introduza os parámetros de conexión á base de datos que creamos no paso anterior e garde os cambios.

Configuración de WordPress nun servidor Linux

4. Instala CMS WordPress

Abre a seguinte ligazón no navegador "http://[enderezo_ip_servidor]/wp-admin/install.php".

Encha todos os campos e fai clic "Instalar WordPress". Establece un nome de usuario e un contrasinal aleatorios. No noso caso, é wpadmin Qwe123 en consecuencia.

Estes detalles serán utilizados para acceder a WordPress.

Instale CMS WordPress nun servidor Linux

Despois de rematar a instalación, abra a ligazón "http://[enderezo_ip_servidor]/wp-login.php", introduza os detalles de acceso e inicie sesión en WordPress.

Instale CMS WordPress nun servidor Linux

Deberías ver un dos modelos de WordPress na páxina principal.

Instale CMS WordPress nun servidor Linux

A configuración está rematada.

Detalles de acceso a WordPress:

  • http://[server’s_ip_address]/wp-login.php
  • Inicio de sesión: wpadmin
  • Contrasinal: Qwe123
❮ Artigo anterior Configurando o ficheiro .htaccess

Pregúntanos por VPS

Sempre estamos preparados para responder ás súas preguntas a calquera hora do día ou da noite.