944 063 154

Blog

Etiqueta: Panel de control Plesk

¿Qué es el fichero .htaccess?

Publicado enDesarrollo web en septiembre 20, 2017 10:00 am

Si estás pensando en montar un blog, tienda online o cualquier tipo de página web en primer lugar, tendrás que decidir qué plataforma vas a usar (WordPress, Blogger, PrestaShop, Joomla…). Después, si quieres que tu web no dependa de la plataforma escogida deberás buscar un hosting que se adecúe a tus necesidades. Y, a la hora de elegir el alojamiento existen dos opciones: Windows o Linux. En el caso de que te decantes por el código abierto, te será muy útil conocer qué es el fichero .htaccess. Este fichero se encuentra dentro de cualquier servidor que funcione con el servidor web Apache.

Dónde encontrar el fichero .htaccess

No deberías tener problema alguno en dar con él desde el panel de tu servidor, pero es es posible que te cueste un poco encontrarlo. Esto se debe a que el fichero .htaccess se encuentra oculto. Lo puedes hacer tanto con el Panel de control Plesk como vía FTP; ya sea a través del administrador de archivos, o utilizando programas especialmente indicados para ello como Filezilla. El fichero .htaccess modifica la configuración de un directorio y la de todos los subdirectorios que dependan de él. Por eso encuentra en el directorio principal.

Este fichero es fundamental para la gestión de un servidor Linux. Al contrario que otros servidores, permite establecer restricciones y cambiar la configuración del mismo. De esta forma tendrás un control total. Podrás controlar quién tiene acceso a tu servidor, a tus archivos o a tus directorios y que tu página web cuente con el mejor nivel de seguridad.

Todas las funcionalidades del fichero .htaccess

El fichero .htaccess es muy importante. Todas las peticiones que tus usuarios realicen dentro de tu página web, antes de recibir respuesta deben ser aprobadas, o rechazadas, por .htaccess.  Además, contribuye a combatir el spam, permitiendo bloquear tanto bots como las direcciones IP que consideres necesario. También facilita la creación de URLs amigables para los buscadores o evitar el envío de paquetes PING. Pero, además, tiene otras funcionalidades:

  • Configurar del acceso a tu web con y sin www. Así, redirigiéndolos a un único dominio, evitarás hacerte competencia a ti mismo.
  • Hacer redirecciones a dominios diferentes. Muy útil si le has cambiado el nombre de tu dominio. Evita perder todas las visitas que lleguen a tu antiguo sitio web.
  • Personalizar mensajes de error. Para darle tu toque personal a los errores que pueda devolver la web a tus usuarios.
  • Comprimir archivos CSS, JavaScript, XML o texto para reducir el peso de tu sitio web y que cargue en menos tiempo.
  • Almacenar imágenes en caché. De esta forma, una vez visitada tu página web, las siguientes veces que tus usuarios vayan a visitarte, cargará mucho más rápido.
  • Redirigir desde HTTP a HTTPS. En este caso, además de las modificaciones necesarias en el fichero .htaccess requiere de la instalación de un certificado de seguridad SSL.

Queda patente que son muchas las funcionalidades del fichero .htaccess. Aun así, para poder llevarlas a cabo, deberás tener en cuenta que .htaccess está en formato ASCII y funciona mediante comandos de texto. Por lo que, si no los dominas, tendrás que andar con cuidado en las modificaciones que vayas a realizar.

Incrementar el período de rotación de los logs de Plesk en Windows

Publicado enSistemas TI

Los logs son archivos que contienen todo tipo de información acerca de cada uno de los registros. Desde el día o la hora a si ha ocurrido algún inconveniente a la hora de acceder o de devolver una petición. Algo que puede darse tanto en un servidor como en el Panel de control Plesk Windows.

Período de rotación en Plesk Windows

Plesk Windows rota por defecto todos sus logs de manera diaria. Por lo que, si queremos revisar qué es lo que ha pasado con alguno de nuestros correos electrónicos que sea de hace más de un día, o ver qué archivos se han subido vía FTP estaremos a ciegas. De forma automática, Plesk habrá generado un nuevo archivo que habrá reemplazado al anterior. Y, con ello, se habrá perdido toda esa información que estábamos buscando.

Para evitar perder toda la información, lo que podemos hacer es incrementar el período de rotación de los logs. Para que los logs se almacenen durante más tiempo, podemos crear un nuevo directorio. Un nuevo archivo en el que poder almacenar todos esos datos y poder consultarlos en períodos de tiempo más largos.

Nosotros hemos realizado este nuevo directorio en la ubicación c:\logs y hemos procedido a crear tres nuevas entradas (REG_SZ) en el registro. La primera de ellas será para guardar los logs de FTP; una segunda destinada a los logs de HTTP; y una última para almacenar los logs de email.

HKLM\SOFTWARE\Plesk\PSA Config\Config\SaveFTPLogsDirectory

HKLM\SOFTWARE\Plesk\PSA Config\Config\SaveHTTPLogsDirectory

HKLM\SOFTWARE\Plesk\PSA Config\Config\SaveMailLogsDirectory

Plesk Windows-incrementar-periodo-rotacion-linube

Establecer parámetros de configuración

De esta forma, evitaremos perder información relacionada con los logs del panel de control Plesk. Ya que, de no cambiarse la configuración, los logs se borrarán todos los días. En esta nueva ubicación, podemos establecer diferentes parámetros de configuración para los logs. Estos pueden ser en base a su tamaño o simplemente ampliando el período en el que estos se renueven (semanalmente, mensualmente o incluso hasta una fecha determinada…). Así, la información contenido en cada uno de los logs (FTP, HTTP o de correo electrónico) permanezca un mayor período de tiempo en el servidor.

A partir de ahora, cada vez que necesitemos consultar los datos almacenados en los logs de Plesk podremos hacerlo. Los datos contenidos estarán disponibles durante el tiempo que especifiquemos y cualquier duda acerca de un correo o un acceso a FTP podremos resolverla con facilidad.

Activar el filtro antispam de Plesk, paso a paso

Publicado enAdministración de Sistemas

En Linube queremos ofrecerte el mejor soporte y por eso nos centramos en proporcionarte información útil para tu web. En este post vamos a contarte, paso a paso, como activar el filtro antispam de Plesk. Y, lo primero de todo, será activar una cuenta de correo.

Filtro antispam de Plesk

Al activar una cuenta de correo desde el panel de control Plesk se suelen dar estos pasos:

filtro antispam de Plesk-crear cuenta

Es muy importante que tengas en cuenta que al crear la cuenta, no se activa por defecto el antispam, hay que acceder a la pestaña de filtro antispam y marcar la casilla para activarlo.

filtro antispam de Plesk-cuenta de correo

Una vez marcado el filtro antispam hay que escoger una forma de filtrado.

1. Marcar los correos como ***Spam***

filtro antispam de Plesk-encabezados-linube

Si eliges esta opción los correos que son spam seguirán llegando a tu bandeja de entrada pero llegarán con el encabezado ***SPAM*** (o como decidas denominarlo), lo que te permitirá crear un filtro en tu gestor de correo para que, directamente, te lleguen a una carpeta distinta y no interfieran en tu gestión diaria de correo.

Para crear el filtro:

–          En Outlook, sigue estos pasos:

filtro antispam de Plesk-filtro-linube

filtro antispam de Plesk-configurar filtro

–          Y en Mail de Mac, accede a tu cuenta > Preferencias > Filtros y sigue los mismos pasos.

2. Eliminar directamente todos los mensajes

filtro antispam de Plesk-eliminar mensajes

En este caso, todos los mensajes que el sistema de filtrado considera  SPAM son eliminados directamente. El usuario no llegará a descargarlos.

Esta opción es recomendable marcarla una vez que se ha probado la primera o la tercera, y se ha visto que el sistema antispam realmente cataloga como spam los correos que no  interesan.

3. Mover a la carpeta spam

filtro antispam de Plesk-mover-linube

La diferencia respecto a la primera opción es que el filtrado lo hace el servidor, no el gestor de correo, y te ahorras crear la carpeta de filtrado en dicho gestor de correo.

No hace falta crear el filtro porque el sistema directamente lo mete en una carpeta denominada SPAM.

Ver los logs de Apache o IIS en Plesk

Publicado enSistemas TI

Con el nuevo diseño de Plesk, algunas de las opciones que antes se encontraban con relativa facilidad, ahora se hallan más ocultas (funciones como los logs de Apache han cambiado). Debido a las muchas preguntas que hemos ido recibiendo vamos a ir viendo dónde podemos localizar algunas de las más reclamadas. Relacionadas en su mayoría con la nueva ubicación de las diferentes pestañas y funcionalidades, en este y sucesivos posts, iremos viendo dónde se ubican ahora algunas de las funciones más utilizadas en el Panel de control Plesk.

Logs de Apache

En esta ocasión, hablaremos sobre cómo ver los logs de Apache en el Panel de control Plesk. Para ello, en primer lugar, debemos acceder al panel Plesk como administrador. Y, una vez allí, pinchar en la pestaña de “suscripciones”. A continuación, deberemos entrar en “sitios web y dominios” y después acceder a las diferentes bases de datos.

Al desplegar el menú de “bases de datos”, aparecerán diversas opciones entre las que se encuentran los registros o logs. Desde aquí podemos ver todos los logs que se vayan generando en nuestro servidor. Y, en el caso de que sean muchos, también podremos controlar su rotación para evitar que se acumulen y ocupen demasiado espacio en el disco. Además, en la opción de “administrar archivos de registro” podemos encontrar muchas más funcionalidades. Como puede ser enviar los logs a tu dirección de correo electrónico, modificar el período de eliminación estableciendo un tamaño máximo al archivo o una fecha límite en la que queramos que se roten los logs.

Tipos de logs

Los logs de Apache pueden ser de dos tipos. Por un lado se encuentran los logs de errores o de información de diagnóstico. En este archivo se encuentran todos los fallos que se han ido produciendo durante cada una de las solicitudes a un servidor. Además, cada uno de estos errores aparecerá detallado, para que solucionar los problemas de tu servidor sea mucho más sencillo.  Por otra parte, están los access logs o logs de acceso. Aquí se almacenan todas las solicitudes, tanto entrantes como salientes, del servidor.

A pesar de que ambos tipos de logs ya vengan preconfigurados, tanto por formato como por ubicación, puedes modificar ambos parámetros. Configura la información que deseas almacenar y el lugar dónde quieres guardar esos registros.

Ver los logs de Apache no es tan difícil como pudiera parecer. A pesar de los cambios que se han introducido en el Panel Plesk, las diferentes funcionalidades siguen ahí. Sólo tenemos que saber encontrarlas de nuevo.

Clonar una base de datos

Publicado enSistemas TI

A fin de realizar pruebas, actualizaciones o cambios previamente es recomendable tener una copia o hacer las pruebas con dicha copia sin tocar la base de datos en producción. Para ello, podemos clonar nuestra base de datos de forma sencilla desde el panel de control. Esta técnica es válida para bases de datos mySQL cómo MSSQL. Además de clonar una base de datos, también es posible repararla; encontrarás información sobre ello en nuestros artículos de “Reparar bbdd parte 1” y “Reparar bbdd parte 2”, en el que te lo explicamos paso a paso.

Clonar una base de datos

1) Desde el panel de control Plesk > Sitios Web y Dominios > Bases de datos y pinchamos en Copiar.

2) – Suscripción de destino: Podremos escoger otro dominio/suscripción en el caso de que tengamos más alojamientos con la misma cuenta en el mismo servidor.

  • Base de datos de destino: Creamos una base de datos nueva con el nombre que le queramos dar.
  • Crear una copia completa: Seleccionamos esta opción si queremos traernos todos los registros de la base de datos de origen. En el caso de que sólo necesitemos la estructura dejaríamos la opción sin marcar.

3) Con esto se empezará a clonar la base de datos, dependiendo del tamaño de la misma te podrás tomar el café tranquilo o no ;). Fíjate en que no da la opción de Webadmin, sino existe un usuario con permisos.

4) En la pestaña Usuarios podemos crear el acceso correspondiente.

 

clonar una base de datos-linube

Con esto ya tenemos nuestra base de datos clonada, rápido y sencillo ¿verdad?.

clonar una base de datos-sql

Exportar/Importar una base de datos MySQL utilizando Plesk y phpMyAdmin

Publicado enSistemas TI

En este artículo explicaremos cómo mover el contenido de una base de datos MySQL a una nueva; para ello, utilizaremos Plesk y phpMyAdmin.

Exportar una base de datos MySQL

1) En el panel de control Plesk vamos a SITIOS WEB Y DOMINIOS > Bases de Datos.

2) Seleccionamos la opción Webadmin de la base de datos origen (la que queremos exportar).

3) Una vez en phpMyAdmin, vamos a la opción Exportar y le damos a Continuar.

Importar una base de datos MySQL

Una vez tenemos la base de datos, hay que ir al Webadmin de la base de datos de destino, si aún no tenemos una base de datos es el momento de crearla desde PLESK.

1) Antes de importa la base de datos tenemos que editar el archivo .sql que nos hemos descargado, para ello se puede usar cualquier editor de texto simple, en este ejemplo yo uso Sublime Text.

Tenemos 2 líneas importantes:

CREATE DATABASE -> La borramos entera. Ya que no es necesario crear la base de datos al haberlo hecho desde Plesk.
USE databasename -> El databasename debe coincidir con el nombre de la base de datos destino.

base de datos MySQL-mysqlsublime

 

 

 

 

 

 

 

 

 

 

 

 

2) Con nuestro .sql listo para el combate. Vamos a la opción Importar > Seleccionamos la base de datos a subir y le damos a Continuar.

base de datos MySQL-mysqlimport4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3) Si todo ha ido bien, veremos que se han creado las correspondientes tablas y sus registros.

base de datos MySQL-mysqlimport5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MySQL es la mayor fuente de bases de datos del mundo. Consulta su web, aquí. 

En cambio, si lo que deseas es clonar una base de datos, pincha aquí. Todo ello y mucho más en nuestro blog tecnológico.

Instalar WordPress en tres pasos a través del nuevo panel Plesk

Publicado enGeneral

WordPress es un gestor de contenidos muy utilizado en la actualidad por las ventajas que ofrece al usuario a la hora de crear su web. ¿Quieres instalar WordPress en tu servidor a golpe de click?

En la versión del nuevo panel de control Plesk 11.5 resulta muy sencillo instalar este gestor de contenidos; además, existen infinidad de temasplantillas que permiten que los usuarios puedan personalizar los diseños web de una manera muy sencilla.

Cómo instalar WordPress en Plesk:

1.- Accede a tu panel Plesk y localiza la pestaña de aplicaciones. Elige WordPress y despliega las opciones del botón derecho para escoger “instalación personalizada”

Instalación sencilla de WordPress

2.- Acepta las condiciones y pincha sobre “siguiente”.

Condiciones de WordPress

3.- Por defecto no se instala en la raíz (directamente bajo el dominio principal) sino que se instala en un directorio específico. Si quieres que se instale bajo el dominio principal bastará con dejar en blanco la casilla que aparece tras /

Recomendamos hacer click sobre “usar credenciales administrativas no conectadas a ningún usuario en particular” e incluir el usuario y la contraseña que se desee.

IMPORANTE: Ese usuario y esa contraseña son las que permitirán acceder al panel de gestión de WordPress de manera directa.

Opciones de instalación de WordPress que vienen por defecto en Plesk

Para acceder a WordPress, ahora simplemente deberás poner en la barra de tu navegador:

http://tudominio.com/wp-admin

e incluir el usuario y contraseña asignados en la instalación en la interfaz que aparecerá.

Otras opciones

4.- Si deseas tener la interfaz del panel de gestión de WordPress en castellano, accede a la pestaña de aplicaciones y dentro del WordPress que ya figurará instalado escoge la opción “cambiar configuración”

Cambiar lenguaje en WordPress

5.- Y selecciona el lenguaje que quieras para la interfaz de WordPress

Seleccionar lenguaje castellano para la interfaz de WordPress

Error de timeout al hacer backup de SQL Server desde Plesk

Publicado enSistemas TI

Si al tratar de hacer un backup de una base de datos pesada en SQL Server desde el panel de control Plesk se produce un error de timeout en SQL Server similar a este, “The timeout period elapsed prior to the completion of the operation or the server is not responding”, tendremos que editar el “regedit”.

El motivo es que las conexiones remotas tienen un tiempo máximo y sino se completa el proceso se cierra la misma produciéndose así el error. La mayoría de las veces se soluciona aumentando el tiempo de la conexión que Plesk establece. Para hacerlo hay que editar las siguientes entradas en el registro (regedit).

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Plesk\PSA Config\Config\ADOConnectionTimeout
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Plesk\PSA Config\Config\ADOCommandTimeout

Para poner un valor similar al que tiene por defecto SQL Server, podemos ponerlo a 600 y probar. Si la base de datos es demasiado pesada y queremos permitir hacer backup, tendremos que ajustar además el valor del propio SQL Server por uno más alto. Si lo ponemos a 0 será ilimitado.

Cómo ver el timeout

El comando para ver el timeout es:

EXEC sp_configure

Si queremos cambiarlo por ejemplo a 1000, ejecutamos:

EXEC SP_CONFIGURE 'remote query timeout', 1000
reconfigure

También se puede hacer desde las propiedades de Sql Server > Connections.

timeout en SQL Server

Cómo solucionar el error de timeout al realizar el backup de SQL Server

 

Error al actualizar awstats en Plesk

Publicado enSistemas TI

Cuando las estadísticas awstats de un servidor no se actualizan es porque ha ocurrido algún error al procesarse. Para solucionarlo, es conveniente ejecutar el proceso a mano para ver dónde se produce error. Para ello, puedes recurrir al siguiente fragmento de código:

/usr/local/psa/admin/sbin/statistics

Qué errores pueden ocurrir

En cuanto a los errores, pueden darse de diferentes tipos. Si, por ejemplo, obtenemos el siguiente error:

System error 2: No such file or directory
statistics_collector: Unable to execute /usr/share/awstats/tools/awstats_buildstaticpages.pl -awstatsprog=/usr/share/awstats/wwwroot/cgi-bin/awstats.pl -configdir=/usr/local/psa/etc/awstats -config=dominio.com-https -dir=/var/www/vhosts/dominio.com/statistics/webstat-ssl/current  >/dev/null 2>&1

En /etc/psa/psa.conf revisamos las rutas relativas a awstats y vemos que están mal. La solución pasa por corregirlas y ejecutar de nuevo el script para confirmar que esta vez se ejecuta correctamente. Una vez ejecutado de nuevo el scrpit, el resultado debería ser algo similar a esto:

[root@server psa]# diff psa.conf psa.conf.default
110,111c110,111
AWSTATS_BIN_D /usr/share/awstats/wwwroot/cgi-bin
AWSTATS_TOOLS_D /usr/share/awstats/tools
---
AWSTATS_BIN_D /var/www/cgi-bin/awstats
AWSTATS_TOOLS_D /usr/share/awstats

A partir de ahora, los errores relacionados con awstats estarán solucionados. De forma que las estadísticas de tu servidor o plan de hosting volverán a estar disponibles para que puedas consultarlas siempre que lo necesites. Desde Linube recomendamos consultarlas con cierta frecuencia. Así, algunos problemas como el exceso de consumo en disco podrán solucionarse antes de que lleguen a afectar al funcionamiento de tu web. En este sentido, recuerda dejar al menos un 10% de su capacidad disponible. O, si no puedes prescindir de ninguno de los elementos, pásate a un plan de mayor capacidad.

Crear cuentas de FTP adicionales a un determinado directorio en Plesk

Publicado enGeneral

El protocolo de transferencia de archivos, o FTP, tiene diversas funciones. Entre ellas destaca la posibilidad de transferir archivos, lo que convierte a FTP en un servicio básico de cualquier plan de alojamiento web.

Como es muy probable que la gestión de tu servidor sea una tarea compartida entre los miembros que conformen tu equipo, además de la cuenta FTP principal vinculada al Panel de Control Plesk de tu servicio de hosting, puedes crear cuentas adicionales. Donde a cada uno de estos nuevos usuarios le asignes una serie de privilegios haciendo que puedan acceder a la totalidad del servidor, o sólo a directorios concretos.

Para crear una cuenta FTP adicional, basta con que sigas estos sencillos pasos:

  1. Inicia sesión en el área de cliente con los datos de acceso asociados a tu cuenta en Linube.
  2. Una vez dentro del Panel de Control Plesk, ve a la pestaña de perfil > añadir nuevo contacto.
  3. Rellena los datos del nuevo usuario. Deberás incluir un nombre de usuario y una contraseña; el sistema puede generar de forma automática una por ti de la que, además, te mostrará el nivel de seguridad. No te olvides de asignar los privilegios que quieras otorgarle al nuevo usuario. Esta opción te permite, por ejemplo, que cada departamento de tu empresa solo tenga acceso a una determinada información dentro del área de cliente.
  4. Al pulsar guardar cambios, se creará el nuevo usuario.

Desde este momento, para acceder a cada una de las cuentas FTP adicionales creadas, el sistema únicamente solicitará un nombre de usuario y una contraseña para acceder a las zonas del Panel de Control Plesk a las que se tiene acceso.

Al igual que pueden crearse cuentas FTP adicionales, también es posible cambiar la configuración, para otorgar más o menos privilegios o modificar cualquier otro dato. De la misma forma, las subcuentas FTP que añadas podrás eliminarlas en el momento que desees. La única cuenta que no podrás eliminar es la vinculada a tu servicio de hosting en Linube.

También desde la interfaz de línea de comandos

Si lo prefieres, también puedes realizar esta operación desde línea de comandos. En este caso, deberás utilizar las siguientes líneas de texto:

/usr/sbin/useradd -d $HTTPD_VHOSTS_D/your_domain/some/location -s /bin/false USER_NAME
passwd USER_NAME
/usr/sbin/usermod -G psacln USER_NAME
chmod 755 $HTTPD_VHOSTS_D/your_domain/some/location
chown USER_NAME:psacln $HTTPD_VHOSTS_D/your_domain/some/location
chmod 751 $HTTPD_VHOSTS_D/your_domain/httpdocs

Nota: Para poder llevar a cabo está operación es necesario acceder al sistema con una cuenta con privilegios.

Configurar wildcard domains conservando la variable de $_SESSION en php

Publicado enAdministración de Sistemas Dominios

Muchos os habréis fijado que en algunos servicios web se usan subdominios dinámicos (wildcard) para las cuentas de sus usuarios. Sin embargo, una vez configurados los subdominios dinámicos, tenemos un serio problema y es que, las variables de sesión por defecto se pierden cada vez que ejecutamos la aplicación web desde un subdominio distinto al que hemos utilizado para crear dicha variable de sesión. Es por ello que debemos configurar wildcard domains.

Podemos comprobar esto en algunos sitios web que no usan subdominios dinámicos pero, si hacemos login en su www.dirección.com, si después vamos a su dirección.com sin las ‘www’ nos encontramos con que no hemos iniciado sesión. El problema es similar y tiene la misma solución que en el caso de los wildcard domains.

Configurar Wildcard Domains

Vamos a explicar cómo solucionar este problema y cómo hacer funcionar subdominios dinámicos. Los pasos:

1 – Configurar el dns.
2 – Configurar el servidor web.
3 – Configurar bien el ámbito de las variables $_SESSION en la aplicación php para que se compartan las variables de sesión entre los subdominios.

Configurar el dns.

Basta con crear una entrada tipo host es decir, “A” apuntando a *.tudominio.com . También vale con crear un CNAME * apuntando al registro A del dominio principal (“tudominio.com”).

Si hacemos un ping a “loquesea.tudomino.com” debería ya resolver (a menos que tengas capado el tráfico ICMP claro).

Configurar el servidor web.

Apache httpd: debemos configurar en el vhost de nuestro dominio un ServerAlias que atienda a “*.midominio.com”.

Nginx: hay que configurar en la sección Server un valor server_name como “*.midominio.com”.

IIS: debemos dejar un sitio virtual sin headers y ese es el que atenderá las peticiones de vuestro wildcard dns, es la única forma.

Se ha discutido sobre este tema en el foro oficial de IIS y según los propios desarrolladores, aunque ha sido demandada durante años, no se piensa implementar dicha funcionalidad por ahora, ni siquiera en IIS7.

Nota: sólo podemos disponer de un sitio web sin headers por servidor web IIS.

Configurar nuestras variables de $_SESSION en php

El truco esta en configurar la directiva session.cookie_domain como “.midominio.com” (importante el . delante del dominio).

Podéis hacerlo en tiempo de ejecución, antes de llamar a session_start(); siempre que tengamos deshabilitado el autoarranque de sesiones en el php.ini (como es lógico y viene por defecto)

ini_set("session.cookie_domain",".midominio.com");
session_start();

 

¿Usas plesk?

Aquí te explicamos cómo configurar wildcard domains en servidores con el panel de control Plesk.

Habilitar subdominios wildcard con Plesk

Publicado enDominios

Este artículo explica cómo crear subdominios wildcard mediante el panel de control Plesk. Con esto se permite que todos los subdominios apunten a una misma página; independientemente de qué subdominio se utilice para el acceso. Es decir, no importará que entren a tu web a través de www.tudominio.com o www.subdominio.tudominio.com. En cualquiera de los casos aterrizarán en tu página principal, o aquella que hayas definido.

La manera más sencilla de crear subdominios wildcard es utiliando el panel de control Plesk.

Creando subdominios wildcard desde Plesk

En primer lugar, tendremos que añadir un registro en la zona DNS. Por supuesto, deberemos asegurarnos de que el directorio raíz del subdominio se corresponde con el dominio principal. Es deicr, algo similar a lo siguiente:


*.dominio.com.   CNAME   dominio.com

A continuación, dentro del directorio /conf debemos crear, o editar, el archivo vhost.conf de la siguiente manera:


ServerAlias *.dominio.com

Por último, tendremos que ejecutar el siguiente comando de forma que se apliquen los cambios que hemos introducido.


/usr/local/psa/admin/bin/websrvmng -av

ASP.NET con IIS 7.5 y Plesk 9.3

Publicado enGeneral

Ya está disponible la nueva actualización de Plesk; y con ello hemos detectado el siguiente problema tras instalar Plesk 9.3 sobre Windows Server 2008 R2: “ASP.NET no está autorizado para acceder al recurso solicitado” (is not authorized to access the requested resource)


 Server Error in '/mssql' Application.
 --------------------------------------------------------------------------------

 Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
 Description: An unhandled exception occurred during the execution of
 the current web request. Please review the stack trace for more
 information about the error and where it originated in the code.

 Exception Details: System.UnauthorizedAccessException: Access is
 denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))

 ASP.NET is not authorized to access the requested resource. Consider
 granting access rights to the resource to the ASP.NET request
 identity. ASP.NET has a base process identity (typically
 {MACHINE}ASPNET on IIS 5 or Network Service on IIS 6) that is used if
 the application is not impersonating. If the application is
 impersonating via , the identity will be
 the anonymous user (typically IUSR_MACHINENAME) or the authenticated
 request user.

 To grant ASP.NET access to a file, right-click the file in Explorer,
 choose "Properties" and select the Security tab. Click "Add" to add
 the appropriate user or group. Highlight the ASP.NET account, and
 check the boxes for the desired access.

 Source Error:

 An unhandled exception was generated during the execution of the
 current web request. Information regarding the origin and location of
 the exception can be identified using the exception stack trace below.

 Stack Trace:

 [UnauthorizedAccessException: Access is denied. (Exception from
 HRESULT: 0x80070005 (E_ACCESSDENIED))]

 [FileLoadException: Could not load file or assembly
 'System.ServiceModel, Version=3.0.0.0, Culture=neutral,
 PublicKeyToken=b77a5c561934e089' or one of its dependencies. Access is
 denied.]
 System.Reflection.Assembly._nLoad(AssemblyName fileName, String
 codeBase, Evidence assemblySecurity, Assembly locationHint,
 StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean
 forIntrospection) +0
 System.Reflection.Assembly.nLoad(AssemblyName fileName, String
 codeBase, Evidence assemblySecurity, Assembly locationHint,
 StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean
 forIntrospection) +43
 System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef,
 Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean
 forIntrospection) +127
 System.Reflection.Assembly.InternalLoad(String assemblyString,
 Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean
 forIntrospection) +142
 System.Reflection.Assembly.Load(String assemblyString) +28

 System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String
 assemblyName, Boolean starDirective) +46

 [ConfigurationErrorsException: Could not load file or assembly
 'System.ServiceModel, Version=3.0.0.0, Culture=neutral,
 PublicKeyToken=b77a5c561934e089' or one of its dependencies. Access is
 denied.]

 System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String
 assemblyName, Boolean starDirective) +613

 System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo
 ai) +57

 System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection
 compConfig) +178
 System.Web.Compilation.BuildProvidersCompiler..ctor(VirtualPath
 configPath, Boolean supportLocalization, String outputAssemblyName) +54

 System.Web.Compilation.ApplicationBuildProvider.GetGlobalAsaxBuildResult(Boolean  isPrecompiledApp)
 +232
 System.Web.Compilation.BuildManager.CompileGlobalAsax() +51
 System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled()  +337

 [HttpException (0x80004005): Could not load file or assembly
 'System.ServiceModel, Version=3.0.0.0, Culture=neutral,
 PublicKeyToken=b77a5c561934e089' or one of its dependencies. Access is
 denied.]

 System.Web.Compilation.BuildManager.ReportTopLevelCompilationException()
 +58
 System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled()  +512

 System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager
 appManager, IApplicationHost appHost, IConfigMapPathFactory
 configMapPathFactory, HostingEnvironmentParameters hostingParameters)
 +729

 [HttpException (0x80004005): Could not load file or assembly
 'System.ServiceModel, Version=3.0.0.0, Culture=neutral,
 PublicKeyToken=b77a5c561934e089' or one of its dependencies. Access is
 denied.]
 System.Web.HttpRuntime.FirstRequestInit(HttpContext context)  +8897659
 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context)  +85

 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest  wr,
 HttpContext context) +333

¿Cómo corregimos el error de ASP.NET?

El error se podía reproducir al tratar de ejecutar una aplicación desde Plesk, en nuestro caso al lanzar el administrador web para bases de datos SQL Server ASP.NET Enterprise Manager o MyLittleAdmin que se ejecutan desde Plesk.

Si tratamos de corregir el error desde la herramienta Plesk Reconfigurator no solucionaremos el problema debido a que los permisos necesarios no están añadidos. Por ello, tendremos que hacerlo a mano.

Lo único que tenemos que hacer es editar el archivo DiskSecurity.xml que encontraremos en la carpeta %PLESK_DIR%etcDiskSecurity y añadirle el siguiente contenido dentro del tag Entries:


<!-- Permisos a Assembly para ASP.NET Enterprise manager -->

<Entry AccounType="1" Account="Psacln" Path="C:Windowsassembly" AceFlags="FilesOnly" AccessMask="Read" EntryFlags="0x0" />

Finalmente hay que ejecutar el siguiente comando para que se apliquen los cambios en los permisos:


"%plesk_bin%applysecurity" --apply

¿Te ha quedado claro? Si lo deseas, puedes consultar más artículos sobre ASP.net pinchando aquí.

 

 

 

Plesk 9.x rompe Yast2

Publicado enSistemas TI

Si estás utilizando YaST, la aplicación para la distribución de Linux openSUSE que facilita la adminsitración de un sistema y la instalación de software, es posible que te cause problemas. Especialmente cuando tratas de instalar Plesk 9.x sobre openSUSE. Es decir, que la ejecución de YaST2 fallará sobre el panel de control Plesk.

Lo más probable es que al realizar tal acción te encuentres con un error similar al que te mostramos a continuación:

# yast
//sbin/yast: line 27: //lib/YaST2/bin/yast2-funcs: No such file or directory
//sbin/yast: line 250: set_lang_from_sysconfig: command not found
//sbin/yast: line 279: check_ncurses: command not found
package yast2-qt is not installed
package yast2-gtk is not installed
Something is wrong with the YaST user interface.

A pesar de que este error aún no cuenta con una solución definitiva, te mostramos cómo puedes arreglarlo.

Cómo puedes arreglar el problema de YaST

El problema es que Plesk modifica $PATH añadiéndole de forma incorrecta una doble barra. Para solucionarlo, basta con quitar dicha barra y comprobar que ya funciona de la forma correcta.

export PATH=/sbin:/bin:/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games:/usr/lib/mit/bin:/usr/lib/mit/sbin

Obviamente, lo anterior sólo es un pequeño parche que solucionará el problema de forma momentánea. Es decir, que solo funcionará mientras tengamos la sesión de Plesk abierta. Para que se conserven los cambios y se mantengan cuando cerremos sesión, lo mejor, es meterlo en el .bashrc.

echo 'export PATH=/sbin:/bin:/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games:/usr/lib/mit/bin:/usr/lib/mit/sbin' >> ~/.bashrc

Este es un bug que afecta a las versiones 9.0, 9.1, 9.2 y 9.3 de Plesk que, casi con total seguridad, quedará arreglado en la próxima actualización del panel de control.

Cómo obtener los paths definidos para las aplicaciones y servicios de Plesk

Publicado enSistemas TI

Saber cómo puedes obtener los paths definidos para las aplicaciones y los servicios del panel de control Plesk puede ser de gran utilidad. Especialmente, conocer dónde se encuentra cada cosa y cuáles son las diferentes variables de Plesk. Igualmente, en el caso de que gestionéis diferentes entornos entre los que no sea posible realizar una configuración homogénea. En todas estas ocasiones, pueden facilitaros la labor enormemente.

Accediendo a los paths definidos

Recuerda que, antes de realizar cualquier modificación en el archivo, es necesario que consultes la documentación de Plesk. Además, no olvides que los scripts que te facilitamos a continuación únicamente tienen la función de mostrar dónde se encuentra la información relacionada con el panel de control Plesk. De forma que cualquier cambio realizado en Plesk, o en los archivos relacionados con él, podría afectar al comportamiento del servicio; además de a su disponibilidad. Para evitar cualquier incidencia sigue las recomendaciones que se especifican en la documentación de Plesk.

En relación a cómo se estrcutura la información, se sigue el siguiente formato:

variable [whitespace characters] value

Esto es, el nombre del campo seguido por espacios o tablas, seguidos a su vez por el valor del campo. Cualquier otro elemento puede eliminarse sin que afecte a la sintaxis del script.


# cat /etc/psa/psa.conf

#

# Plesk tree
PRODUCT_ROOT_D /usr/local/psa

# Directory of SysV-like Plesk initscripts
PRODUCT_RC_D /etc/init.d

# Directory for config files
PRODUCT_ETC_D /usr/local/psa/etc

# Directory for service utilities
PLESK_LIBEXEC_DIR /usr/lib64/plesk-9.0

# Virtual hosts directory
HTTPD_VHOSTS_D /srv/www/vhosts

# Apache configuration files directory
HTTPD_CONF_D /etc/apache2

# Apache include files directory
HTTPD_INCLUDE_D /etc/apache2/conf.d

# Apache binary files directory
HTTPD_BIN_D /usr/bin

#Apache log files directory
HTTPD_LOG_D /var/log/apache2

#apache startup script
HTTPD_SERVICE apache2

# Qmail directory
QMAIL_ROOT_D /var/qmail

# Location of qmail maildirs
PLESK_MAILNAMES_D /var/qmail/mailnames

# Path to rblsmtpd
RBLSMTPD /usr/sbin/rblsmtpd

# Courier-IMAP
COURIER_IMAP_ROOT_D /

# Proftpd
FTPD_CONF /etc/proftpd.conf
FTPD_CONF_INC /etc/proftpd.include
FTPD_BIN_D /usr/bin
FTPD_VAR_D /var/run/proftpd
FTPD_SCOREBOARD /var/run/proftpd/scoreboard

# Bind
NAMED_RUN_ROOT_D /var/lib/named
NAMED_OPTIONS_CONF /etc/named.conf.include.plesk-options
NAMED_ZONES_CONF /etc/named.conf.include.plesk-zones

# Webalizer
WEB_STAT /usr/bin/webalizer

# Logrotate
LOGROTATE /usr/local/psa/logrotate/sbin/logrotate

# MySQL
MYSQL_VAR_D /var/lib/mysql
MYSQL_BIN_D /usr/bin

# PostgreSQL
PGSQL_DATA_D /var/lib/pgsql/data
PGSQL_BIN_D /usr/bin

# Backups directory
DUMP_D /var/lib/psa/dumps

# Mailman directories
MAILMAN_ROOT_D /usr/lib/mailman
MAILMAN_VAR_D /var/lib/mailman

# Python binary
PYTHON_BIN /usr/bin/python2.6

# Tomcat root directory
CATALINA_HOME /usr/share/tomcat6

# DrWeb
DRWEB_ROOT_D /opt/drweb
DRWEB_ETC_D  /etc/drweb

# GnuPG binary
GPG_BIN /usr/bin/gpg

# Tar binary
TAR_BIN /bin/tar

# AWStats
AWSTATS_ETC_D /etc/awstats
AWSTATS_DOC_D /usr/share/apache2/icons/awstats

# openssl binary
OPENSSL_BIN /usr/bin/openssl

LIB_SSL_PATH /lib/libssl.so
LIB_CRYPTO_PATH /lib/libcrypto.so

CLIENT_PHP_BIN /usr/local/psa/bin/php-cli
CGI_PHP_BIN /usr/bin/php-cgi5
AWSTATS_TOOLS_D /usr/share/doc/packages/awstats/tools
AWSTATS_BIN_D   /srv/www/cgi-bin