Configurar rotación de archivos de registro en un panel Plesk

En ocasiones, te ha podido ocurrir que tienes espacio ocupado en tu alojamiento web y no sabes porqué. Primero debes revisar dónde tienes ocupado el espacio en tu alojamiento web. En este post verás como reducir el espacio ocupado por los ficheros de log o archivos de registro en tu panel Plesk.

Estos ficheros de log suelen aumentar de tamaño cuando por ejemplo se tienen muchas visitas, o si hay muchos errores en la web, ya que toda esta información se va registrando en estos ficheros. En otros post explicaremos más sobre la detección de errores en php con estos ficheros, ahora nos vamos a centrar simplemente en reducir espacio si estos ficheros crecen en exceso.

Paso 1: Primero debes acceder a tu panel Plesk.

Paso 2: Después debes hacer clic en Sitios web y dominios

sitios web y dominios

Paso 3: A continuación debes hacer clic en Mostrar operaciones avanzadas y cuando se desplieguen más opciones en Registros:

registros panel plesk

Ahí verás una serie de ficheros como access_log, error_log, etc. De estos ficheros también hablaremos en detalle en otros post. Ahora tan solo debes comprobar si ocupan mucho espacio, y si es así a continuación te mostraré como puedes reducir el tamaño de dichos ficheros.

ficheros de log

Paso 4: Haz clic en Rotación de registros:

rotacion de registros panel plesk

Paso 5: En Configuración podrás indicar el tamaño máximo que pueden ocupar los ficheros, así como el número máximo de archivos de registro y también puedes marcar la opción de Comprimir archivo de registro. De este modo si por ejemplo indicas que el tamaño máximo sea 1024KB, y que como máximo haya 2 archivos de log, como máximo los ficheros ocuparán 2048KB que son 2MB. Por último debes pulsar sobre el botón de arriba Activar:

activar rotacion de log panel plesk

De esta forma podremos limitar el espacio ocupado por estos archivos de registro tal y como queramos.

Si te queda alguna duda puedes usar la zona de comentarios. Espero que te haya resultado de ayuda. A nosotros como siempre puedes ayudarnos compartiendo el post en tus redes sociales. ¡Gracias!

Cómo crear una redirección de dominio

Muchas veces, no es suficiente registrar un dominio, si no que es recomendable registrar varios, para tener al menos los TLD más importantes. Es decir, cuando quieres proteger el nombre de tu empresa o marca, al menos es recomendable registrar el dominio .com y .es. Según el caso hay que tener otros como el .net, .org… si quieres saber más sobre el uso de los TLD puedes leer nuestro artículo sobre para qué usar los distintos tipos de dominios.

En definitiva, tendrás un dominio principal con alojamiento web, y otros dominios sin alojamiento web, con los cuales podrás crear una redirección al dominio principal o podrás usarlos como alias de dominio del dominio principal. En este post te voy a explicar como crear una redirección, de modo que si alguien escribe en el navegador uno de los dominios que no son el principal, automáticamente en el navegador aparecerá el dominio principal.

Paso 1: Accede a tu zona privada en aquihaydominios.com

Paso 2: En el menú, haz clic en servicios contratados.

En esta pantalla verás todos los servicios que tienes contratados en aquihaydominios.com

Paso 3: Haz clic en configuración del dominio que quieras redireccionar.

servicios contratados aquihaydominios

Paso 4: En la siguiente pantalla haz clic en Redireccionar dominio:

redireccionar dominio

Paso 5: Por último tan solo debes indicar el nombre del dominio principal, de modo que el dominio que estás configurando será automáticamente redirigido al dominio que estás indicando.

redirigir dominio

Comentar que este tipo de redirección es una redirección 301. En otros post hablaremos de los distintos tipos de redirección.

Espero que el post te haya resultado de ayuda. Tú puedes ayudarnos compartiendo el post en tus redes sociales. Y como siempre, para cualquier consulta, puedes usar la zona de comentarios. ¡Gracias!

Cómo poner una página de mantenimiento en tu web

Hay veces que por algún motivo, necesitas trabajar en tu web, pero no quieres que esté online y los usuarios vean los cambios que estás haciendo. En ese caso, veamos cómo poner una página de mantenimiento en tu web haciendo uso del fichero .htaccess.

Si tienes un fichero .htaccess creado dentro del directorio /httpdocs, tendrás que editarlo. En caso de no tenerlo, deberás crearlo. El código que debes añadir en este fichero es el siguiente:

RewriteEngine on
RewriteCond %{REQUEST_URI} !/paginaDeMantenimiento.html$
RewriteCond %{REMOTE_ADDR} !^TuIpPublica
RewriteRule $ /paginaDeMantenimiento.html [R=302,L]

Dentro de este código solo hay 2 parámetros que deberás cambiar:

  • paginaDeMantenimiento.html
    Aquí deberás poner el nombre de la página html que hagas para indicar que tu web está en mantenimiento. Puede ser lo compleja que quieras o muy simple, bastaría con poner un texto que indique: “Estamos realizando labores de mantenimiento. Gracias”
  • TuIpPublica
    Aquí debes poner tú ip. Tu ip pública actual es: 38.107.179.219
    Esto se hace para que solo desde tu ip pública se pueda ver la web actual y no la página de mantenimiento. De este modo, mientras tu estás trabajando en tu web, los demás verán tu página de mantenimiento paginaDeMantenimiento.html

Ya que tu verás la web con normalidad, te preguntarás: ¿Cómo puedo comprobar que los demás no verán mi web si no la página de mantenimiento? Tienes varias opciones.

  • Comprobar tu web desde otra conexión. No sirve desde otro ordenador si está conectado al mismo router, debe ser otra conexión. Por ejemplo: si tienes ADSL en casa y además tienes conexión en el móvil con otra tarifa de datos (no vale si está conectado al mismo router por wifi) podrás comprobar tu web desde el móvil.
  • Usar un navegador anónimo de los que hay por internet. De esta forma, desde tu propia conexión, puedes ver otras páginas pero sin usar tu ip.

Así de fácil, de todos modos si tienes alguna consulta no dudes en usar la zona de comentarios. Y si el post te ha sido de utilidad o piensas que le puede servir a alguien, te agradecemos que lo compartas en tus redes sociales. ¡Gracias!

Ejecutar php como Apache o como FastCGI

Si has trabajado con aplicaciones como WordPressPrestashop, que funcionan con Apache y Mysql, y has instalado plugins, temas, etc etc. Es probable que alguna vez te hayas encontrado con que al usar el plugin o módulo te haya dado un error de permisos. A veces se puede solucionar simplemente accediendo  por FTP al directorio del plugin, y dándole permisos 777 a los directorios, o a algún fichero concreto. Sin embargo, a veces ocurre que es WordPress, Prestashop u otra aplicación la que crea los ficheros o directorios, y es un usuario distinto al usuario FTP. Es decir, el usuario que ejecuta por ejemplo WordPress es Apache y es distinto al usuario FTP, por lo que los ficheros o directorios que crea Apache no son accesibles al usuario FTP.

En definitiva, esto se puede solucionar cambiando el modo de ejecución de PHP, y en lugar de usar Apache, usar FastCGI. De esta forma cualquier fichero o directorio modificado por la aplicación también podrá ser usado por el usuario FTP y viceversa.

Hay que tener en cuenta que al ser un modo distinto de ejecución de PHP puede que parte de la programación no funcione igual en un modo que en otro, por lo que se recomienda, que si se decide hacer el cambio, se revise exhaustivamente el funcionamiento de la web, para comprobar que todo es correcto.

A continuación describimos los pasos para hacer el cambio:

  • Accede a tu panel Plesk
  • Haz clic en la pestaña “Sitios web y dominios”
  • A continuación, abajo del todo haz clic en tu dominio
  • Por último en la sección “Estadísticas y scripting web”, donde indica Soporte para PHP, cambiar Módulo Apache por Aplicación FastCGI. No confundir con Aplicación CGI, que es otra opción y tiene peor rendimiento que el FastCGI.

Desactivar php safe mode

Por defecto la mayoría de servidores compartidos suelen traer la opción php safe_mode activada (On), lo que significa que el modo seguro de php está activado. Esto hará que se desactiven muchas de las funciones de php que afectan a la seguridad del alojamiento web.

En ocasiones, aplicaciones web como WordPress tienen conflictos con el safe_mode activado. Este tipo de conflictos suelen ser de permisos para escribir en un directorio creado por Apache. Es decir, cuando creas un directorio a través de WordPress, realmente no es lo mismo que crearlo desde el FTP manualmente, lo está creando otro usuario: Apache, y los permisos en el alojamiento web los tiene el usuario FTP. Posteriormente si intentas subir un fichero a un directorio creado por Apache, aunque este directorio tenga permisos 777 no podrás por ser un usuario distinto al usuario FTP.

Este tipo de conflictos se puede resolver desactivando la opción safe_mode, es decir poniendo la opción safe_mode = Off.

En aquihaydominios.com usamos Plesk como panel de control, así que a continuación te explicaremos como desactivar php safe mode en Plesk.

Primero accede al Panel Plesk con el usuario y clave que te hayamos dado al contratar el servicio.

acceder plesk

Una vez hayas accedido, ve a la sección Sitios web y dominios.

sitios web y dominios

A continuación, en la parte inferior, aparecerá un enlace con tu dominio, como el que se muestra en la siguiente imagen:

configuracion de tu dominio

Haz clic en tudominio.com y accederás a la configuración del alojamiento web. En la parte inferior de esa pantalla, depende de los permisos que tengas, verás una configuración u otra. Por lo general verás algo como lo que te mostramos a continuación:

safe mode on

Si tienes la opción “safe_mode” de PHP habilitado marcada, lo desmarcas y aceptas los cambios.

Es importante que una vez hecho esto, compruebes que tu web sigue funcionando correctamente en todos los aspectos. Si no fuera así, puedes volver a marcar la opción y guardar los cambios nuevamente.

Por otro lado, si no te aparece esta opción, no dudes en solicitarlo abriendo un tickets desde tu zona privada de cliente.

¿Te ha sido de ayuda este post? ¿Lo has hecho alguna vez? ¿Te has encontrado con alguna dificultad? ¿Lo recomiendas? ¿No lo recomiendas? ¡Esperamos tus comentarios!

Pruebas de rendimiento con Apache JMeter

Un aspecto importante al desarrollar una aplicación web es tener previsto el posible impacto que el uso de esta pueda ocasionar en el servidor web. Si la aplicación es simple o de tamaño medio, quizás no sea obligatorio realizar pruebas de rendimiento, aunque siempre es recomendable. Para ello podemos usar Apache JMeter, así como una serie de utilidades que nos darán consejos sobre aspectos que debemos modificar para una mejor optimización de la aplicación.

Empezaremos hablando sobre las pruebas de rendimiento, que según la Wikipedia son:

“pruebas que se realizan, desde una perspectiva, para determinar lo rápido que realiza una tarea un sistema en condiciones particulares de trabajo.”

La herramienta que vamos a utilizar (Apache JMeter) permite realizar pruebas de carga de un servidor web o alojamiento web, está desarrollada 100% en Java y es Open Source. El objetivo es grabar un escenario de pruebas para posteriormente configurarlo con los parámetros de una posible situación real (por ejemplo, indicar el número de usuarios concurrentes).

PASO 1: Tras abrir la aplicación, necesitamos configurarla para indicar qué tipo de pruebas queremos realizar, en nuestro caso, realizaremos una prueba a la página principal de la aplicación. Para ello, agregamos un servidor proxy al banco de trabajo.

apache jmeter servidor proxy

PASO 2: Tras agregar el servidor proxy necesitamos configurar el navegador con los valores indicados en él. Para configurar el navegador Mozilla Firefox ir al menú herramientas y pulsar en Opciones. El navegador mostrará una ventana en la que tendremos que seleccionar la pestaña Avanzado. Una vez allí, pulsar el botón Configuración que se encuentra dentro de la pestaña Red. En esta nueva ventana le indicaremos al navegador que utilice el servidor proxy creado en Apache JMeter.

crear servidor proxy apache jmeter

Nota: Esta configuración es la que hay que poner si se mantienen los valores por defecto del servidor proxy creado. En caso de modificar algún parámetro, como por ejemplo el puerto, se deberá cambiar por el seleccionado.

PASO 3: A continuación hay que crear un grupo de hilos en el cual se almacenarán todas las peticiones detectadas por el servidor proxy.

crear grupo de hilos jmeter

PASO 4: Una vez creado el grupo de hilos hay que configurar el servidor proxy para que almacene las peticiones en él.

PASO 5: Tras iniciar el servidor proxy se guardarán en el grupo de hilos creado todas las peticiones que realice el navegador, por lo que accedemos a la aplicación (en nuestro caso sólo vamos a acceder a la página de inicio, pero puedes navegar por tu aplicación para simular el comportamiento de un usuario). Una vez cargada la aplicación, el elemento Grupo de Hilos tendrá una lista de peticiones, que se corresponden con las peticiones que realiza la página de inicio de la aplicación.

En otros post trataremos sobre la inclusión de Listeners, que permiten analizar la información registrada durante la prueba de rendimiento, y de Asertions, que permiten detectar anomalías y/o problemas en la aplicación.

PASO 6: Ya tenemos todo preparado para iniciar la prueba, por lo que paramos el servidor proxy desde la misma ventana desde que lo iniciamos, y configuramos la prueba en cuestión. La prueba va a consistir en realizar 200 peticiones por cada una de las peticiones registradas por el servidor proxy. Una vez terminadas las 200 peticiones se van a realizar 3 iteraciones más (4 en total).

configurar numero de hilos servidor proxy apache jmeter

PASO 7: Tras configurar el plan de pruebas solo queda lanzar la ejecución de dicho plan. Para ello pulsar CTRL-R. (sería recomendable guardar el escenario grabado antes de iniciar el test).

Post aportado por: Luis Miguel Ceballos Torres y Daniel Prieto Tagua

Forzar https usando htaccess

A veces necesitamos forzar que una URL siempre sea https por motivos de seguridad, por ejemplo una URL de login o una URL para introducir tarjetas de crédito.

Esto se puede conseguir desde el .htaccess con el siguiente código:

Ver código HTACCESS
#Forzar https
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} identificacion [OR]
RewriteCond %{REQUEST_URI} forma-pago
RewriteRule ^(.*)$ https://www.aquihaydominios.com/$1 [R=301,L]

En nuestro caso, hemos añadido dos: la de identificación y la de forma-pago. En los dos casos, será redirigirá automáticamente a https. Además añadimos R=301 para indicar a Google que es una redirección permanente.

Si por el contrario, queremos que una página nunca sea https, tendríamos que indicar lo siguiente en el .htaccess.

Ver código HTACCESS
RewriteCond %{SERVER_PORT} 443
RewriteCond %{REQUEST_URI} fin-pedido
RewriteRule ^(.*)$ http://www.aquihaydominios.com/fin-pedido [R=301,L]

Hay que tener en cuenta, que en ambos casos se usa la cláusula SERVER_PORT para indicar el puerto por defecto del http, y https, en nuestro caso el http va por el 80, y el https por el 443

¿Se te ocurre otra forma de hacerlo? ¿Cómo harías para forzar que todas fueran http menos unas cuantas? (ya que, de este modo, al estar en una https e ir a otra URL haciendo clic en un enlace, se mantiene el https, a no ser que sea fin-pedido, que se especificó que solo fuera http).

¡Ánimo, piensa y cuéntanos!