Textpattern es un sistema de gestión de contenido PHP gratuito y de código abierto. Es bastante liviano, rápido y fácil de usar, al tiempo que brinda una personalización decente a través de temas y complementos. En esta guía, instalaremos Textpattern en una nueva instancia de Debian 10.
Requisitos
- Un nuevo sistema Debian 10 en el que tiene acceso al usuario root o cualquier usuario con privilegios sudo.
- Un nombre de dominio registrado que apunta a su servidor.
Si inició sesión como usuario sudo, cambie a root para esta configuración:
sudo su -
Establezca la variable de entorno $VISUAL en un editor de texto de su preferencia. Por ejemplo, para usar nano:
echo "export VISUAL=nano" >> ~/.profile . ~/.profile
Paso 1:Instalación del software necesario.
Actualice la caché de paquetes en su sistema:
apt update
Luego instale Nginx, PHP-FPM, las extensiones de PHP requeridas, MariaDB y certbot:
apt install -y nginx mariadb-server php-fpm php-xml php-mysql php-json php-mbstring php-zip certbot
Asegúrese de que los servicios Nginx y MariaDB estén habilitados y en ejecución:
systemctl enable --now nginx.service mariadb.service
Paso 2:descarga del patrón de texto
Copie el enlace de descarga (en formato .tar.gz) para el último lanzamiento de patrón de texto de sus lanzamientos en Github y descárguelo a su servidor con wget de la siguiente manera:
wget https://github.com/textpattern/textpattern/releases/download/4.7.3/textpattern-4.7.3.tar.gz
Luego descomprima el archivo y mueva el contenido a una ubicación dentro del directorio webroot:
tar -xzf textpattern*.tar.gz rm textpattern*.tar.gz mv textpattern* /var/www/html/textpattern
Paso 3:Configuración de la base de datos
Comience ejecutando el script mysql_secure_installation para realizar mejoras de seguridad básicas:
mysql_secure_installation
Responda las preguntas como se muestra a continuación y asegúrese de elegir una contraseña segura para el usuario root:
Enter current password for root (enter for none):Set root password? [Y/n] y New password: your_password Re-enter new password: your_password Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y
A continuación, crearemos una base de datos y un usuario para ser utilizados por Textpattern. Inicie sesión en el shell de MySQL con:
mysql -u root -p
Ingrese su contraseña de root, luego emita las siguientes declaraciones. Asegúrese de reemplazar textpattern_user_password con una contraseña adecuada.
MariaDB [(none)]> CREATE DATABASE textpattern_db; MariaDB [(none)]> CREATE USER textpattern_user IDENTIFIED BY 'textpattern_user_password'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON textpattern_db.* TO textpattern_user; MariaDB [(none)]> \q
Paso 4:Configuración de Nginx
Primero, obtenga un certificado SSL para su dominio ejecutando el siguiente comando:
certbot certonly --webroot --webroot-path /var/www/html -d "your_domain" -m "[email protected]"
Suponiendo que su dominio esté configurado correctamente, certbot obtendrá automáticamente un certificado que usaremos para configurar HTTPS.
A continuación, deshabilite el archivo de configuración del servidor Nginx predeterminado:
rm /etc/nginx/sites-enabled/default
Luego abra un nuevo archivo de configuración en /etc/nginx/sites-disponible:
$VISUAL /etc/nginx/sites-available/textpattern
E ingrese la siguiente configuración sensata, reemplazando your_domain con su nombre de dominio:
server { listen 80; #replace your_domain below server_name your_domain; return 301 https://$server_name$request_uri; } server { listen 443 ssl; #replace your_domain below server_name your_domain; root /var/www/html/textpattern; index index.php; ssl on; #replace your_domain below ssl_certificate /etc/letsencrypt/live/your_domain/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your_domain/privkey.pem; location ~* \.php$ { fastcgi_pass unix:/run/php/php7.3-fpm.sock; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; } }
Tenga en cuenta que esta configuración redirigirá todas las solicitudes HTTP a HTTPS. Es posible que desee modificarlo si tiene preferencias o requisitos específicos. Una vez que esté satisfecho con él, cree un enlace simbólico en el directorio de sitios habilitados:
ln -s /etc/nginx/sites-available/textpattern /etc/nginx/sites-enabled/
Luego verifique si hay errores de sintaxis con:
nginx -t
Finalmente, emita el siguiente comando para cargar la nueva configuración:
systemctl reload nginx.service
Paso 5:Configuración del patrón de texto
Su instalación de Textpattern ahora debería ser accesible pero aún no está configurada. Vaya a https://your_domain/textpattern/setup/ para iniciar el instalador web. Después de elegir un idioma, ingrese los detalles de la base de datos:
- Nombre de usuario de MySQL:textpattern_user
- Contraseña de MySQL:ingrese la contraseña elegida para textpattern_user durante el paso 2.
- Servidor MySQL:servidor local
- Base de datos MySQL:textpattern_db
- Prefijo de tabla:dejar en blanco
El instalador verificará las credenciales de la base de datos ingresadas antes de generar la configuración correspondiente. Cree el archivo requerido:
$VISUAL /var/www/html/textpattern/textpattern/config.php
Pegue la configuración generada, guarde el archivo y salga. Continúe con el siguiente paso en el instalador web, donde se le pedirá que ingrese información para la cuenta de administrador de CMS y la configuración del sitio. Una vez hecho esto, elimine el directorio de instalación:
rm -rf /var/www/html/textpattern/textpattern/setup
Y otorgue al usuario del sistema Nginx la propiedad de los directorios a los que Textpattern necesita acceso de escritura:
chown -R www-data /var/www/html/textpattern/{files,images,themes}
Su sitio de Textpattern ahora está listo para usar. Se puede acceder a la interfaz de administración en https://your_domain/textpattern.
Más información
- Obtenga información sobre cómo administrar sus certificados con certbot en esta guía