diff --git a/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/00-db-config.png b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/00-db-config.png new file mode 100644 index 0000000..baca9d1 Binary files /dev/null and b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/00-db-config.png differ diff --git a/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/01-site-config.png b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/01-site-config.png new file mode 100644 index 0000000..854d753 Binary files /dev/null and b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/01-site-config.png differ diff --git a/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/02-first-login.png b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/02-first-login.png new file mode 100644 index 0000000..4a685c1 Binary files /dev/null and b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/02-first-login.png differ diff --git a/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/03-front-page.png b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/03-front-page.png new file mode 100644 index 0000000..6055ecf Binary files /dev/null and b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/imgs/03-front-page.png differ diff --git a/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/t7-ej1-wordpress-local-naortega.pdf b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/t7-ej1-wordpress-local-naortega.pdf new file mode 100644 index 0000000..0865a39 Binary files /dev/null and b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/t7-ej1-wordpress-local-naortega.pdf differ diff --git a/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/t7-ej1-wordpress-local-naortega.tex b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/t7-ej1-wordpress-local-naortega.tex new file mode 100644 index 0000000..bd6ca0a --- /dev/null +++ b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/t7-ej1-wordpress-local-naortega.tex @@ -0,0 +1,193 @@ +\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 <>, 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 + \\ +\\ +Este documento se distribuye bajo los términos y condiciones de la licencia +Creative Commons Attribution No Derivatives 4.0 International. + +\end{document} diff --git a/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/t7-ej1-wordpress-local-naortega.toc b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/t7-ej1-wordpress-local-naortega.toc new file mode 100644 index 0000000..291058a --- /dev/null +++ b/2/IAW/assignments/t7-ej1-instalacion-wordpress-local/t7-ej1-wordpress-local-naortega.toc @@ -0,0 +1,6 @@ +\babel@toc {spanish}{}\relax +\contentsline {section}{\numberline {1}Nginx}{2}{section.1}% +\contentsline {section}{\numberline {2}MariaDB}{2}{section.2}% +\contentsline {section}{\numberline {3}WordPress}{3}{section.3}% +\contentsline {section}{\numberline {4}Conclusión}{5}{section.4}% +\contentsline {section}{\numberline {5}Derechos de Autor y Licencia}{6}{section.5}%