Seguimos ampliando o noso mercado. Hai pouco dixémosche como fixo unha imaxe de Gitlab, e esta semana apareceu Drupal no noso mercado.
Contámosche por que o eliximos e como se creou a imaxe.
Drupal — unha plataforma cómoda e potente para a creación de calquera tipo de sitio web: desde micrositios e blogs ata grandes proxectos sociais, tamén utilizados como base para aplicacións web, escritos en PHP e utilizando bases de datos relacionais como almacenamento de datos.
Drupal 9 inclúe todas as funcións introducidas na versión 8.9. A diferenza fundamental entre a versión 9 e a versión 8 é que a plataforma seguirá recibindo actualizacións e correccións de seguranza despois de novembro de 2021. A versión 9 tamén simplifica o proceso de actualización, facilitando aínda máis o proceso de actualización desde a versión 8.
Requisitos do servidor
Para usar Drupal, recoméndase utilizar 2 GB de RAM e 2 núcleos de CPU.
Os principais ficheiros de Drupal ocupan uns 100 MB, ademais necesitarás espazo para almacenar imaxes, bases de datos, temas, módulos adicionais e copias de seguridade, que dependerán do tamaño do teu sitio.
Drupal 9 require PHP 7.4 ou superior cunha limitación mínima (memory_limit) para 64 MB de memoria; se se usan módulos adicionais, recoméndase instalar 128 MB.
Drupal pode usar Apache ou Nginx como servidor web e MySQL, PostgreSQL ou SQLite como base de datos.
Instalaremos Drupal usando Nginx e MySQL.
Instalación
Actualicemos os paquetes instalados á última versión:
sudo dnf update -y
Engademos permiso permanente para o tráfico entrante aos portos http/80 e https/443:
Dado que o repositorio principal de Centos actualmente usa PHP 7.2, imos engadir un repositorio REMI con PHP 7.4 (versión mínima para Drupal 9).
Para iso, engade o repositorio EPEL (requirido polo repositorio REMI):
Dado que estamos a facer un modelo para VDS, e poden ser lentos, engadiremos un atraso de inicio de mysqld de 30 segundos, se non, pode haber problemas co inicio do servidor durante o arranque inicial do sistema:
sudo sed -i '/Group=mysql/a
ExecStartPre=/bin/sleep 30
' /usr/lib/systemd/system/mysqld.service
Imos cambiar o grupo e o usuario no que se executará nginx facendo cambios en /etc/php-fpm.d/www.conf:
sudo sed -i --follow-symlinks 's/user = apache/user = nginx/g' /etc/php-fpm.d/www.conf
sudo sed -i --follow-symlinks 's/group = apache/group = nginx/g' /etc/php-fpm.d/www.conf
Imos cambiar o propietario do directorio de sesións de PHP a nginx en consecuencia:
sudo chown -R nginx. /var/lib/php/session
Imos eliminar as liñas con comentarios do ficheiro de configuración /etc/nginx/nginx.conf (para que non haxa disparadores dobres para sed):
sudo sed -i -e '/^[ t]*#/d' /etc/nginx/nginx.conf
Engade a configuración de compresión gzip a /etc/nginx/nginx.conf
Engademos a configuración do ficheiro de índice index.php a /etc/nginx/nginx.conf:
sudo sed -i '/ root /usr/share/nginx/html;/a
index index.php index.html index.htm;
' /etc/nginx/nginx.conf
Engademos a configuración para o servidor predeterminado: procesamento PHP a través do socket php-fpm, desactiva o rexistro para ficheiros estáticos, aumenta o tempo de caducidade, desactiva o rexistro de acceso e erros para favicon.ico e robots.txt e denegue o acceso a .ht ficheiros para todos:
Imos eliminar o arquivo cos ficheiros de instalación:
rm -f ./tar.gz
Imos asignar o propietario dos ficheiros nginx:
chown -R nginx. /usr/share/nginx/html
Nesta fase apagaremos o servidor e tomaremos unha instantánea:
shutdown -h now
Despois de iniciar o VDS desde a instantánea, realizaremos a configuración inicial do servidor MySQL executando o script:
mysql_secure_installation
Imos habilitar o validador de contrasinal:
Would you like to setup VALIDATE PASSWORD component? : y
Imos establecer o contrasinal para o usuario root de MySQL:
New password:
Re-enter new password:
Eliminamos usuarios anónimos:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Evitemos que o root se conecte de forma remota:
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Imos eliminar a base de datos de proba:
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
Recarguemos as táboas de privilexios:
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Despois disto, para completar a instalación, podemos ir a enderezo_ip_vps
Neste enderezo veremos a páxina de instalación de Drupal.
Imos seleccionar o idioma a usar. Por exemplo: ruso. Fai clic en "Gardar e continuar"
Seleccione un perfil de instalación (a demostración úsase unicamente para familiarizarse co sistema). No noso caso, que sexa "estándar".
Na seguinte páxina daremos un nome á base de datos, por exemplo “drupal”. Imos indicar o nome de usuario root da base de datos e o contrasinal que se lle deu ao executar mysql_secure_installation. Fai clic en "Gardar e continuar".
Agardemos a que se complete a instalación e actualización das traducións (o proceso pode tardar varios minutos).
Indicaremos o nome do sitio, estableceremos o correo electrónico do sitio (en nome do que se enviarán as notificacións do sitio), o inicio de sesión, o contrasinal e o correo electrónico da conta do administrador de Drupal. Tamén estableceremos o país e a zona horaria na configuración rexional. E completa a instalación facendo clic en "Gardar e continuar".
Despois diso, pode ir ao panel de control co inicio de sesión e contrasinal do administrador de Drupal creados.
Configurar HTTPS (opcional)
Para configurar HTTPS, o VDS debe ter un nome DNS válido, especificalo en
/etc/nginx/nginx.conf
na sección do servidor o nome do servidor (por exemplo):
server_name domainname.ru;
Reiniciemos nginx:
service nginx restart
Imos lanzar certbot:
sudo /usr/local/bin/certbot-auto --nginx
Introduza o seu correo electrónico, acepte as condicións do servizo (A), Subscríbase ao boletín (opcional) (N), seleccione os nomes de dominio para os que desexa emitir un certificado (Introduza para todos).
Se todo saíu sen erros, veremos unha mensaxe sobre a emisión exitosa dos certificados e a configuración do servidor:
Congratulations! You have successfully enabled ...
Despois disto, as conexións ao porto 80 serán redirixidas ao 443 (https).
Engade a /etc/crontab para actualizar automaticamente os certificados:
Configuración de Trusted Host Security (recomendado)
Esta configuración pretende ser unha solución ao problema asociado coa determinación dinámica de base_url e está deseñada para evitar ataques de cabeceira HTTP HOST (cando o teu sitio pensa que é outra persoa).
Para iso, cómpre especificar nomes de dominio de confianza para o sitio no ficheiro de configuración.
En arquivo
/usr/share/nginx/html/sites/default/settings.php Deixemos comentarios ou engadamos unha configuración con patróns de nomes de sitios reais, por exemplo:
Drupal admite APCu - Alternative PHP User Cache, as versións 8 e 9 fan un maior uso de APCu como caché local a curto prazo que as versións anteriores. O tamaño da caché predeterminado (32 MB) é adecuado para a maioría dos sitios e non pode superar os 512 MB.
Para activalo, instale o módulo PHP APCu:
dnf -y install php-pecl-apcu
Reinicie nginx e php-fpm:
service nginx restart
service php-fpm restart
Se usas a lingua rusa e APCu co tamaño de memoria recomendado para a caché, podes ver unha advertencia no panel de control de que o tamaño da memoria asignada para a caché é diferente do recomendado, pero en realidade todo funciona correctamente. e o aviso incorrecto probablemente se corrixa nas próximas actualizacións.
Lembrámosvos que tamén podedes facernos unha imaxe
Hai tres opcións de como participar.
Prepara a imaxe ti mesmo e obtén 3000 rublos ao teu saldo
Se estás preparado para lanzarte inmediatamente á batalla e crear a imaxe que che falta, abonarémosche 3000 rublos ao teu saldo interno, que podes gastar en servidores.
Infórmalle ao servizo de asistencia que vas crear e probar imaxes
Acreditarémosche 3000 rublos e activaremos a posibilidade de crear instantáneas
Solicite un servidor virtual cun sistema operativo limpo
Instala o software neste VPS e configúrao
Escribe instrucións ou script para a implantación de software
Cree unha instantánea para o servidor configurado
Solicite un novo servidor virtual seleccionando a instantánea creada anteriormente na lista despregable "Modelo de servidor".
Se o servidor se crea correctamente, transfira os materiais recibidos na fase 6 ao soporte técnico
Se hai un erro, pode comprobar o motivo co apoio e repetir a configuración
Para empresarios: ofrécelle o teu software
Se es un programador de software que se implanta e se usa en VPS, podemos incluílo no mercado. Así é como podemos axudarche a atraer novos clientes, tráfico e concienciación. Escríbenos