194 lines
6.4 KiB
TeX
194 lines
6.4 KiB
TeX
\documentclass[12pt,a4paper,titlepage]{article}
|
|
\usepackage[spanish]{babel}
|
|
\usepackage{hyperref}
|
|
\usepackage{graphicx}
|
|
\usepackage{subcaption}
|
|
\usepackage{minted}
|
|
|
|
\title{Tema VII Ejercicio I: Instalación de WordPress en Local}
|
|
\author{Nicolás A. Ortega Froysa}
|
|
|
|
\begin{document}
|
|
\maketitle
|
|
|
|
\tableofcontents
|
|
\pagebreak
|
|
|
|
\section{Nginx}
|
|
|
|
Para instalar Nginx sólo hemos de instalarlo junto a PHP. Instalamos los
|
|
paquetes necesarios con el comando siguiente:
|
|
|
|
\begin{minted}{console}
|
|
# apt install nginx php php-fpm php-mysql
|
|
\end{minted}
|
|
|
|
Deberíamos de habilitar el uso de PHP con la extensión de MySQL. Para esto
|
|
tenemos que editar el archivo INI que se encuentra en {\tt
|
|
/etc/php/7.4/fpm/php.ini} y descomentar la línea que pone {\tt
|
|
extension=mysqli}.
|
|
|
|
Ahora en el directorio {\tt /etc/nginx/sites-available} creamos un archivo con
|
|
el nombre {\tt my-wordpress.local.conf} con el contenido siguiente:
|
|
|
|
\begin{minted}{nginx}
|
|
server {
|
|
listen 80 default_server;
|
|
listen [::]:80 default_server;
|
|
|
|
root /var/www/wordpress;
|
|
|
|
index index.html index.htm index.nginx-debian.html index.php;
|
|
server_name my-wordpress.local;
|
|
|
|
location / {
|
|
try_files $uri $uri/ =404;
|
|
}
|
|
|
|
location ~ \.php$ {
|
|
include snippets/fastcgi-php.conf;
|
|
fastcgi_pass unix:/run/php/php-fpm.sock;
|
|
}
|
|
}
|
|
\end{minted}
|
|
|
|
Luego se crea un enlace simbólico del mismo en la carpeta de {\tt
|
|
sites-enabled}. A partir de ahí podemos inicializar el servicio:
|
|
|
|
\begin{minted}{console}
|
|
# systemctl enable nginx
|
|
# systemctl start nginx
|
|
\end{minted}
|
|
|
|
\section{MariaDB}
|
|
|
|
Como en nuestro caso vamos a instalar MariaDB, hemos de correr el comando
|
|
siguiente para instalarlo:
|
|
|
|
\begin{minted}{console}
|
|
# apt install mariadb-server
|
|
\end{minted}
|
|
|
|
Ahora lo tenemos que configurar utilizando el comando siguiente, siguiendo los
|
|
pasos. Sólo hemos de fijar la contraseña de root (el administrador) y luego
|
|
seguir seleccionando las opciones por defecto.
|
|
|
|
\begin{minted}{console}
|
|
# mysql_secure_installation
|
|
\end{minted}
|
|
|
|
Cuando ya lo tenemos configurado empezamos el servicio:
|
|
|
|
\begin{minted}{console}
|
|
# systemctl start mariadb
|
|
# systemctl enable mariadb
|
|
\end{minted}
|
|
|
|
Ahora tenemos que crear la base de datos:
|
|
|
|
\begin{minted}{mysql}
|
|
CREATE DATABASE wpdb;
|
|
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'wppass';
|
|
GRANT ALL PRIVILEGES ON wpdb.* TO 'wpuser'@'localhost';
|
|
FLUSH PRIVILEGES;
|
|
QUIT;
|
|
\end{minted}
|
|
|
|
\section{WordPress}
|
|
|
|
Una vez que tenemos todo el fundamento instalado, ya podemos proseguir a
|
|
instalar el WordPress como tal. Para esto primero hemos de bajar el ZIP que
|
|
contiene la instalación de \url{https://wordpress.org/latest.zip}. Una vez hecho
|
|
esto, debemos de extraerlo en {\tt /var/www} para poder usarlo. Notaremos que ya
|
|
crea solo el directorio {\tt /var/www/wordpress}. Este directorio deberíamos de
|
|
cambiarle los permisos (de forma recursiva) para que Nginx pueda editar su
|
|
contenido. Esto lo hacemos con el comando {\tt chown}.
|
|
|
|
\begin{minted}{console}
|
|
# wget https://wordpress.org/latest.zip
|
|
# unzip latest.zip -d /var/www
|
|
# chown -R www-data:www-data /var/www/wordpress
|
|
\end{minted}
|
|
|
|
Ahora, si accedemos a nuestro sitio web (en \url{http://localhost/}) podremos
|
|
encontrarnos con un primer diálogo preguntándonos cuál lengua queremos para
|
|
nuestro WordPress. Vamos a elegir inglés, por los mismos motivos de siempre.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=0.75\textwidth]{imgs/00-db-config.png}
|
|
\caption{Configuración de la base de datos.}
|
|
\label{fig:db-config}
|
|
\end{figure}
|
|
|
|
|
|
El primer formulario que nos va a aparecer después de esto nos preguntará para
|
|
configurar la base de datos (figura \ref{fig:db-config}). Hay varios campos que
|
|
tenemos que rellenar. Lo primero es el nombre de la base de datos, que
|
|
anteriormente lo habíamos definido como {\tt wpdb}. También nos pregunta por el
|
|
usuario que usará WordPress para conectarse a esta base de datos, que lo
|
|
habíamos definido como {\tt wpuser}. Es bueno {\bf no usar el usuario root}, ya
|
|
que este tiene más acceso a otras bases de datos y, en caso de un infiltrado,
|
|
tendría acceso a más datos. La contraseña es como lo habíamos definido antes:
|
|
{\tt wppass}. La base de datos está localizada en el mismo servidor, así que el
|
|
{\it host} es {\tt localhost}. Y como prefijo para las tablas, aunque no es
|
|
estríctamente necesario -- nuestra base de datos sólo contendrá tablas de
|
|
WordPress -- viene por defecto {\tt wp\_}, así que vamos a dejarlo así.
|
|
|
|
\begin{figure}[ht!]
|
|
\centering
|
|
\includegraphics[width=0.5\textwidth]{imgs/01-site-config.png}
|
|
\caption{Configuración del sitio WordPress.}
|
|
\label{fig:site-config}
|
|
\end{figure}
|
|
|
|
Después de esta configuración, nos encontraremos con la configuración del sitio
|
|
como tal (figura \ref{fig:site-config}). Aquí vamos a definir algunos elementos
|
|
importantes, particularmente el título de nuestro sitio web, el nombre del
|
|
usuario administrador, su contraseña, y su correo electrónico. También hay otra
|
|
opción al final que ayuda a fomentar o no que los buscadores web pongan tu
|
|
página en sus índices.
|
|
|
|
\begin{figure}
|
|
\centering
|
|
\begin{subfigure}{0.45\textwidth}
|
|
\includegraphics[width=0.95\textwidth]{imgs/02-first-login.png}
|
|
\caption{Panel de control.}
|
|
\label{fig:first-login}
|
|
\end{subfigure}
|
|
\hfill
|
|
\begin{subfigure}{0.45\textwidth}
|
|
\includegraphics[width=0.95\textwidth]{imgs/03-front-page.png}
|
|
\caption{Página principal.}
|
|
\label{fig:front-page}
|
|
\end{subfigure}
|
|
\caption{}
|
|
\end{figure}
|
|
|
|
Al finalizar la configuración nos aparecerá el panel de control (figura
|
|
\ref{fig:first-login}). Desde aquí se podrá configurar más WordPress, y crear
|
|
contenidos. Para ver nuestro sitio web en sí, podemos darle arriba donde pone el
|
|
título de nuestra página, en este caso <<My Wordpress>>, y nos llevará a la
|
|
página principal (figura \ref{fig:front-page}), que parece tener por defecto un
|
|
tema bastante sencillo y bonito.
|
|
|
|
\section{Conclusión}
|
|
|
|
La instalación de WordPress es bastante sencillo para cualquiera que tenga un
|
|
mínimo conocimiento de informática. Al menos en sistemas UNIX (como es Debian
|
|
GNU/Linux). Hay formas de usar WordPress sin necesidad de conocimiento técnico,
|
|
pero eso cae fuera de este ejercicio.
|
|
|
|
\pagebreak
|
|
|
|
\section{Derechos de Autor y Licencia}
|
|
|
|
\noindent
|
|
Copyright \copyright\ \the\year\ Nicolás A. Ortega Froysa
|
|
<nicolas@ortegas.org> \\
|
|
\\
|
|
Este documento se distribuye bajo los términos y condiciones de la licencia
|
|
Creative Commons Attribution No Derivatives 4.0 International.
|
|
|
|
\end{document}
|