Base de conocimientos
1 000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!
Esta guía detalla las restricciones relativas al número de conexiones simultáneas permitidas en las bases de datos MySQL de los servicios de alojamiento web.
Límites de conexiones MySQL simultáneas
Con el fin de preservar la estabilidad, la seguridad y la capacidad de respuesta del servidor para todos los usuarios, el sistema aplica límites al número de conexiones simultáneas.
Para cada usuario de base de datos de Infomaniak, el límite máximo es de 38 conexiones MySQL simultáneas.
Este límite evita la saturación de los recursos compartidos. Si se supera este umbral, el acceso se bloquea temporalmente y pueden aparecer errores como El usuario ya tiene más de 'max_user_connections' conexiones activas o Demasiadas conexiones.
En la práctica, este umbral rara vez se alcanza. Si es necesario, es posible distribuir la carga creando usuarios MySQL distintos para los diferentes scripts o servicios de su sitio.
Sin límite de conexiones por hora
Infomaniak no impone ninguna restricción sobre el volumen de solicitudes por hora.Los parámetros como MAX_QUERIES_PER_HOUR o MAX_CONNECTIONS_PER_HOUR no están activados.
A diferencia de algunas ofertas de la competencia, no encontrará errores de superación de recursos del tipo Error SQL: 1226 relacionados con un volumen de actividad por hora.
Más información
Enlace a esta FAQ: https://faq.infomaniak.com/471
¿Le ha sido útil esta FAQ?
Esta guía técnica detalla los límites de recursos de los servicios de alojamiento web de Infomaniak. Es fundamental distinguir entre el tiempo real (reloj) y el tiempo de cálculo (procesador) para comprender el origen de las interrupciones de los scripts.
1. Tiempo de conexión MySQL (E/S)
Límite: 30 segundos reales
Este límite corresponde al tiempo absoluto transcurrido, medido con un cronómetro. Afecta a la comunicación entre PHP y el servidor de la base de datos (MySQL/MariaDB).
En cuanto se abre una conexión, el servidor de la base de datos asigna un máximo de 30 segundos para recibir la solicitud, ejecutarla y devolver los resultados. Si se supera este tiempo límite (a menudo debido a una consulta SQL mal optimizada), el servidor MySQL corta la conexión abruptamente. Esto suele generar el error MySQL server has gone away.
2. Tiempo de procesamiento PHP (CPU)
Límite: 10 segundos de CPU
Este límite se refiere exclusivamente a la potencia de cálculo utilizada por el servidor web para ejecutar el código PHP.
Es fundamental tener en cuenta que el tiempo de espera no se contabiliza. Cuando PHP espera una respuesta de la base de datos, se encuentra en pausa y apenas consume tiempo de CPU. Por lo tanto, un script solo será interrumpido por el servidor web si realiza cálculos intensivos (bucles complejos, criptografía, procesamiento de archivos) durante más de 10 segundos acumulados.
Interacción de los dos límites
Para garantizar la estabilidad de la aplicación, cada operación debe cumplir simultáneamente con estas dos restricciones distintas:
- La aplicación dispone de 30 segundos de tiempo total para interactuar con la base de datos (latencia de red + ejecución SQL).
- La aplicación dispone de 10 segundos de tiempo de cálculo puro para procesar los datos recibidos.
Ejemplo de funcionamiento válido: un script que espera 25 segundos una respuesta compleja de MySQL (E/S) y luego procesa el resultado durante 2 segundos (CPU) funcionará perfectamente, ya que no ha superado ninguna de las dos cuotas individuales, aunque el tiempo total sea de 27 segundos.
Enlace a esta FAQ: https://faq.infomaniak.com/481
¿Le ha sido útil esta FAQ?
Esta guía explica cómo redirigir el tráfico de un nombre de dominio alias (sinónimo) a su dominio principal, o forzar la visualización del dominio principal en la barra de direcciones del navegador.
Evitar el contenido duplicado
Imaginemos que su sitio web está alojado en el dominio principal example.com y que ha configurado un dominio alias como example-alias.com.
Por defecto, cuando un visitante introduce una u otra de estas direcciones en su navegador, la URL introducida sigue mostrándose. Esto puede generar contenido duplicado, lo que perjudica el posicionamiento en los motores de búsqueda (SEO).
Para evitar esto, puede forzar la redirección: si un visitante escribe example-alias.com, se le redirigirá automáticamente a example.com.
Esta configuración se realiza en el archivo .htaccess ubicado en la raíz de su alojamiento (generalmente en la carpeta /web a través de su acceso FTP). Si este archivo aún no existe, deberá crearlo.
A continuación, inserte las siguientes directivas en el archivo:
RewriteEngine On
# Fuerza la redirección a HTTPS y al dominio canónico
RewriteCond %{HTTP:X-Forwarded-Proto} !https [OR]
RewriteCond %{HTTP_HOST} !^example\.com$ [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]Adapte el código anterior según sus necesidades:
- Reemplace
example.compor su nombre de dominio principal y su extensión (.com, .org, .ch, etc.). Agreguewww.delante de su dominio si prefiere forzar la visualización del subdominiowww. - Si se produce un bucle de redirección, puede reemplazar la condición del protocolo por
RewriteCond %{HTTPS} off(especialmente si su alojamiento no utiliza un proxy inverso).
Para obtener más información, consulte la documentación sobre las redirecciones automáticas a HTTPS.
Enlace a esta FAQ: https://faq.infomaniak.com/482
¿Le ha sido útil esta FAQ?
Esta guía trata sobre la sincronización de los servidores mediante el protocolo NTP (Protocolo de Tiempo de Red) y la configuración de la zona horaria en los servidores de Infomaniak.
Sincronización precisa de los servidores mediante NTP
Todos los servidores de Infomaniak están sincronizados a través del protocolo NTP. La empresa pone a disposición sus propios servidores NTP de nivel 1, accesibles al público, para un uso flexible.
Para integrar estos servidores en su configuración, utilice el siguiente registro: pool.ntp.infomaniak.ch.
La configuración predeterminada de la zona horaria es UTC. Sin embargo, las funciones de PHP están diseñadas para tener en cuenta diferentes zonas horarias según las necesidades específicas.
Para ajustar la zona horaria en sus scripts PHP, utilice la función date_default_timezone_set('UTC').
MySQL: características relacionadas con el tiempo
La infraestructura de Infomaniak es compatible con las funciones que permiten trabajar con datos temporales de forma precisa y eficiente, teniendo en cuenta las zonas horarias, lo cual es fundamental para muchas aplicaciones modernas:
- MySQL utiliza una base de datos de zonas horarias para almacenar y gestionar la información sobre las zonas horarias.
- La tabla
mysql.time_zonecontiene los datos de las zonas horarias, incluida la información sobre las diferencias horarias, los nombres de las zonas horarias, etc. - La función CONVERT_TZ se utiliza para convertir una hora de una zona horaria a otra en MySQL con la siguiente sintaxis:
CONVERT_TZ(dt, from_tz, to_tz), donde:dtes la fecha/hora que se va a convertir.from_tzes la zona horaria de origen.to_tzes la zona horaria de destino.
- Ejemplo:
CONVERT_TZ('2024-05-14 12:00:00', 'UTC', 'America/New_York')convertirá la hora 12:00:00 UTC a la hora local de Nueva York.
Enlace a esta FAQ: https://faq.infomaniak.com/487
¿Le ha sido útil esta FAQ?
Esta guía le ayudará a solucionar un error del tipo "Consulta no válida: el servidor MySQL se ha desconectado".
Introducción
- Este tipo de error suele deberse a que se mantiene una conexión MySQL abierta sin enviar solicitudes durante un período de tiempo que supera el límite después del cual la conexión se cierra: http://dev.mysql.com/doc/refman/5.7/en/gone-away.html
- Las variables
wait_timeoutyinteractive_timeoutque controlan esta desconexión están configuradas en 30 segundos: http://dev.mysql.com/doc/refman/5.0/en/communication-errors.html
Soluciones
Para evitar el error "El servidor MySQL se ha desconectado", aquí hay varias soluciones posibles:
Verificación y reconexión automática
Antes de ejecutar una consulta, se recomienda comprobar si la conexión MySQL sigue activa. Si la conexión se ha cerrado, puede restablecerla automáticamente antes de continuar con su consulta. Aquí tiene un ejemplo en PHP:
if (!mysqli_ping($connexion)) {
mysqli_close($connexion);
$connexion = mysqli_connect($host, $user, $password, $database);
}La función mysqli_ping() comprueba si la conexión sigue siendo válida. Si no lo es, el script cierra la conexión y abre una nueva.
Envío periódico de un "ping"
Otra opción consiste en ejecutar un script que envíe periódicamente un "ping" a la base de datos para mantener la conexión activa. Por ejemplo, podría crear una tarea programada (cron job) que envíe una consulta ligera, como SELECT 1;, a intervalos regulares.
Ajuste de los parámetros MySQL (Servidor Cloud)
Con un Servidor Cloud, puede aumentar los valores de las variables wait_timeout e interactive_timeout desde el menú MySQL de su servidor para prolongar la duración de la conexión antes de que se cierre.
Enlace a esta FAQ: https://faq.infomaniak.com/499
¿Le ha sido útil esta FAQ?
Esta guía presenta la función del archivo browscap.ini, que PHP utiliza para identificar ciertas características de un navegador web (nombre, versión, sistema operativo y capacidades) a partir de su encabezado HTTP User-Agent.
Hoy en día, el uso de browscap.ini está orientado principalmente a garantizar la compatibilidad con aplicaciones existentes. Para los nuevos desarrollos, generalmente se prefieren métodos más modernos.
Uso con la función get_browser()
La función nativa de PHP get_browser() requiere acceso a un archivo browscap.ini actualizado para identificar las características del navegador que realizó la solicitud.
En los servicios de alojamiento web de Infomaniak, este archivo suele estar disponible en la siguiente ubicación:
/opt/php/lib/php/browscap.iniSi es necesario, puede verificar su contenido utilizando el siguiente script:
<?php
header('Content-Type: text/plain');
$file = '/opt/php/lib/php/browscap.ini';
if (file_exists($file)) {
echo file_get_contents($file);
} else {
echo 'Archivo no encontrado.';
}Debido a su tamaño y al costo de su carga, el uso de browscap.ini puede afectar el rendimiento de las aplicaciones que dependen de get_browser().
Alternativas recomendadas
Para los nuevos proyectos, generalmente es preferible utilizar soluciones más adaptadas a las prácticas actuales del desarrollo web:
- Bibliotecas PHP instaladas con Composer, como
matomo/device-detectorowhichbrowser/parser, que ofrecen una detección de navegadores y dispositivos más completa y actualizada. - Indicadores del cliente User-Agent (UA-CH), cuando el navegador los admite, para obtener información estructurada a través de los mecanismos previstos por los estándares HTTP actuales.
- Detección de funciones (Feature Detection), verificando directamente la disponibilidad de una función (por ejemplo, en JavaScript o con la regla CSS
@supports) en lugar de deducir el comportamiento a partir del navegador utilizado.
Enlace a esta FAQ: https://faq.infomaniak.com/505
¿Le ha sido útil esta FAQ?
Esta guía se refiere a Django, un framework de código abierto para el desarrollo web en Python, especialmente conocido por su robustez y la rapidez con la que permite desarrollar.
Instalación de Django
Requisitos previos
- Un alojamiento adecuado:
- El despliegue de una aplicación Python que requiere un servidor de aplicaciones en funcionamiento continuo no es adecuado para un alojamiento web compartido estándar.
- Se requiere acceso completo al servidor a través de SSH.
- Entorno técnico:
- Python 3 instalado en el servidor, así como el gestor de paquetes
pip.
- Python 3 instalado en el servidor, así como el gestor de paquetes
- Conocimientos básicos:
- Familiaridad con la interfaz de línea de comandos (CLI) en Linux y la gestión de entornos virtuales de Python (como
venv).
- Familiaridad con la interfaz de línea de comandos (CLI) en Linux y la gestión de entornos virtuales de Python (como
A continuación, se indican los pasos generales para configurar su entorno en su servidor:
Es necesario instalar Django en las ofertas de alojamiento web que garanticen un control total sobre el entorno de ejecución, como los VPS Cloud / VPS Lite: descubra las diferentes opciones de alojamiento web de Infomaniak.
- Conéctese a su servidor VPS mediante SSH.
- Cree y active un entorno virtual dedicado a su proyecto para aislar sus dependencias (por ejemplo,
python3 -m venv my_environnementy, a continuación,source my_environnement/bin/activate). - Instale el framework mediante el gestor de paquetes:
pip install django. - Inicialice su nuevo proyecto con el comando:
django-admin startproject nombre_del_proyecto.
Puesta en producción
Tenga en cuenta que el servidor de desarrollo integrado en Django (que se inicia mediante runserver) no está diseñado para un entorno de producción. Para exponer su sitio web en Internet de forma segura en su VPS de Infomaniak, será necesario configurar un servidor de aplicaciones (como Gunicorn o uWSGI) detrás de un proxy inverso (Reverse Proxy) como Nginx o Apache.
Enlace a esta FAQ: https://faq.infomaniak.com/516
¿Le ha sido útil esta FAQ?
Esta guía le ayudará a encontrar la dirección IP pública de su dispositivo, lo cual puede ser útil en determinadas solicitudes de asistencia técnica.
Mostrar la dirección IP pública en el dispositivo conectado
Haga clic aquí para obtener la dirección IP pública de su dispositivo en formato IPv4 y IPv6.
Métodos alternativos
Visite ipinfo.io o ifconfig.me.
… en macOS
- Desde una aplicación de tipo
Terminal(interfaz de línea de comandos,CLI /Command Line Interface) en su dispositivo, ejecute el comandocurl ifconfig.mey presione Intro. - La dirección que se muestra es la dirección IP pública del ordenador.
Tenga en cuenta que esta dirección puede cambiar periódicamente, especialmente si el router se reinicia o si el proveedor de servicios de Internet utiliza una asignación dinámica de direcciones IP.
Para automatizar la búsqueda de la dirección IP pública, utilice comandos o scripts que consulten servicios como api.ipify.org...
Enlace a esta FAQ: https://faq.infomaniak.com/528
¿Le ha sido útil esta FAQ?
Esta guía explica cómo utilizar PHPMailer con los servicios de alojamiento web de Infomaniak para enviar correos electrónicos desde un sitio web.
⚠ ATENCIÓN ⚠
Infomaniak garantiza que sus servicios cumplen con los protocolos estándar (IMAP, S3, etc.), perono ofrece asistencia adicional para servicios o software externos, ya que su configuración puede variar según el proveedor o el editorPor lo tanto, esta guía se proporciona únicamente como referencia y su implementación es su responsabilidad (véase: Política de asistencia / Art. 11.9 de las CGU). Si es necesario, un profesional cualificado puede ayudarle.
Prólogo
- PHPMailer es una biblioteca PHP que permite crear y enviar correos electrónicos desde un sitio web, especialmente a través de SMTP.
- Permite, entre otras cosas, enviar mensajes en formato HTML, añadir una versión de texto alternativa, gestionar archivos adjuntos y utilizar la autenticación SMTP.
- Para un envío autenticado a través de SMTP, el entorno PHP utilizado por el sitio web debe ser compatible con una conexión cifrada reciente, en particular TLS 1.2 o superior.
- Una versión demasiado antigua de PHP o de la biblioteca OpenSSL utilizada por PHP puede provocar un error de conexión o de autenticación, incluso si la dirección de correo electrónico y la contraseña son correctas.
- No utilice PHP 5.3/5.4 para este tipo de envío; utilice una versión de PHP reciente y con soporte activo.
- Con el envío SMTP autenticado, la dirección utilizada como remitente debe coincidir con la dirección de correo electrónico utilizada para la autenticación SMTP.
Instalar PHPMailer
Para utilizar PHPMailer, instale la biblioteca en los archivos de su sitio web.
- Descargue PHPMailer desde su repositorio oficial o instálelo con Composer si su proyecto lo utiliza.
- Copie los archivos de PHPMailer en un directorio de su sitio web a través de FTP.
Cargue los archivos necesarios en su script PHP, adaptando la ruta según la ubicación elegida:
use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\Exception; require **DIR** . '/PHPMailer/src/Exception.php'; require **DIR** . '/PHPMailer/src/PHPMailer.php'; require **DIR** . '/PHPMailer/src/SMTP.php';
Configurar el envío SMTP con Infomaniak
Utilice la siguiente configuración SMTP autenticada:
- Servidor SMTP:
mail.infomaniak.com - Puerto:
465 - Cifrado:
SMTPS/ SSL-TLS - Autenticación: obligatoria
- Nombre de usuario: la dirección de correo electrónico completa
- Contraseña: la contraseña de la dirección de correo electrónico utilizada
Ejemplo de configuración completa:
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require **DIR** . '/PHPMailer/src/Exception.php';
require **DIR** . '/PHPMailer/src/PHPMailer.php';
require **DIR** . '/PHPMailer/src/SMTP.php';
$mail = new PHPMailer(true);
try {
// Configuration SMTP
$mail->isSMTP();
$mail->Host = 'mail.infomaniak.com';
$mail->SMTPAuth = true;
$mail->Username = '[sender@domain.xyz](mailto:sender@domain.xyz)';
$mail->Password = 'mot_de_passe_de_l_adresse_mail';
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
$mail->Port = 465;
$mail->CharSet = 'UTF-8';
```
// Expéditeur
// L'adresse doit correspondre à celle utilisée pour l'authentification SMTP.
$mail->setFrom('sender@domain.xyz', 'Nom du site');
// Destinataire
$mail->addAddress('recipient@example.com');
// Adresse de réponse facultative
$mail->addReplyTo('sender@domain.xyz', 'Nom du site');
// Contenu du message
$mail->isHTML(true);
$mail->Subject = 'Message envoyé depuis le site';
$mail->Body = '<p>Contenu HTML du message.</p>';
$mail->AltBody = 'Contenu texte du message.';
$mail->send();
echo 'Message envoyé';
```
} catch (Exception $e) {
echo 'Le message n'a pas pu être envoyé. Erreur: ' . htmlspecialchars($mail->ErrorInfo);
}Si su aplicación requiere el uso del puerto 587, utilice STARTTLS:
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 587;
Verifique la versión de PHP y la compatibilidad TLS
El envío SMTP autenticado requiere una conexión cifrada reciente. Si el sitio utiliza una versión demasiado antigua de PHP, por ejemplo PHP 5.3, o una biblioteca OpenSSL demasiado antigua, PHPMailer puede fallar antes o durante la autenticación. Los errores pueden ser engañosos, por ejemplo:
SMTP connect() failedNo se pudo autenticarstream_socket_enable_crypto()- un error de autenticación aunque la contraseña sea correcta
En este caso, compruebe los siguientes puntos:
- la versión de PHP utilizada por el sitio web;
- la versión de OpenSSL utilizada por PHP;
- la versión de PHPMailer utilizada por su proyecto;
- la correspondencia entre el puerto SMTP y el cifrado elegido.
Para una configuración fiable, utilice una versión reciente de PHP, compatible con TLS 1.2 o superior, así como una versión actual de PHPMailer. Consulte estas guías si es necesario:
- Modificar la versión de PHP de un sitio web
- Solucionar un problema de PHP relacionado con una versión obsoleta
- Mostrar la información técnica del sitio
Cómo solucionar un error de "remitente no coincidente"
El error Sender mismatch SMTP code: 550 Additional SMTP info: 5.7.1 puede ocurrir cuando la dirección utilizada como remitente no coincide con la dirección de correo electrónico utilizada para la autenticación SMTP. A continuación, se muestra un ejemplo que debe evitarse:
$mail->Username = 'sender@domain.xyz';
$mail->setFrom('another-address@domain.xyz', 'Nom du site');En este ejemplo, el script se autentica con sender@domain.xyz, pero intenta enviar el mensaje con una dirección de remitente diferente.
Utilice la misma dirección de correo electrónico para la autenticación SMTP y para el remitente:
$mail->Username = 'sender@domain.xyz';
$mail->setFrom('sender@domain.xyz', 'Nom du site');El nombre del remitente puede personalizarse, pero la dirección de correo electrónico debe seguir siendo coherente con la cuenta SMTP utilizada.
Caso de un formulario de contacto
Si un visitante introduce su dirección de correo electrónico en un formulario, no la utilice como dirección de remitente del mensaje. Utilice la dirección de correo electrónico autenticada como remitente y añada la dirección del visitante como dirección de respuesta.
Ejemplo:
$mail->Username = 'sender@domain.xyz';
$mail->setFrom('sender@domain.xyz', 'Formulaire du site');
$mail->addReplyTo($email_visiteur);Esta configuración permite responder al visitante desde su programa de correo electrónico sin enviar el mensaje con una dirección de remitente no autorizada.
Activar el modo de depuración temporalmente
En caso de error, active temporalmente el modo de depuración de PHPMailer para obtener más detalles sobre la conexión SMTP:
$mail->SMTPDebug = 2;
$mail->Debugoutput = 'html';Desactive este modo después de realizar las pruebas para no mostrar información técnica a los visitantes del sitio.
Más información
Enlace a esta FAQ: https://faq.infomaniak.com/576
¿Le ha sido útil esta FAQ?
Esta guía trata sobre el uso de la tecnología Java, que, especialmente en lo que respecta al consumo de memoria RAM, no es compatible con las limitaciones de las ofertas de alojamiento compartido de Infomaniak. Las aplicaciones Java suelen consumir muchos recursos, lo que puede afectar al rendimiento y la estabilidad de los servidores compartidos entre varios usuarios.
Soporte limitado a los applets del lado del cliente
Solo las aplicaciones Java del lado del cliente, es decir, las que se ejecutan en el navegador web del usuario, son compatibles con los servidores compartidos. Estas aplicaciones no requieren recursos del servidor importantes y, por lo tanto, no plantean los mismos problemas que las aplicaciones Java del lado del servidor. En consecuencia, no se admite ningún producto que utilice la tecnología Java del lado del servidor.
Productos y tecnologías no compatibles
A continuación, se muestra una lista no exhaustiva de los productos y tecnologías específicos que no son compatibles con los servidores compartidos:
- Apache OFBiz
- Greenstone
- Opentaps
- Compiere (que requiere Tomcat)
- Play!
- Solr
- Resin
- JBoss
- Scala
- jftp
- Jakarta EE (anteriormente Java 2 Platform, Enterprise Edition, o J2EE, y luego Java Platform, Enterprise Edition o Java EE)
Esta política permite garantizar un rendimiento óptimo y un uso equitativo de los recursos para todos los usuarios de los servidores compartidos.
Enlace a esta FAQ: https://faq.infomaniak.com/591
¿Le ha sido útil esta FAQ?
Esta guía explica cómo activar la opción MultiViews mediante un archivo .htaccess en los sitios alojados por Infomaniak.
Introducción
- En algunos casos, la opción MultiViews debe estar activada para gestionar problemas de redirección y reescritura de URL.
- Esta opción permite al servidor adivinar qué archivo está buscando el usuario. Ejemplo:
- Si el directorio
configurationy el archivoconfiguration.phpse encuentran en la raíz de su sitio y usted intenta acceder a la direccióndomain.xyz/configuration, la opción MultiViews debe estar activada para que el servidor pueda adivinar que desea acceder al archivoconfiguration.php.
- Si el directorio
- La opción MultiViews a veces puede entrar en conflicto con reglas de reescritura de URL más complejas definidas por
mod_rewrite(utilizadas por muchos CMS).
Activar la opción MultiViews
Para ello:
- Abra o cree el archivo
.htaccessque se encuentra en la raíz del sitio web correspondiente. Añada la siguiente directiva:
Options +MultiViews- Guarde los cambios.
Enlace a esta FAQ: https://faq.infomaniak.com/605
¿Le ha sido útil esta FAQ?
Esta guía trata sobre la ejecución del lenguaje C# y del framework .NET mediante la implementación Mono en los servicios de alojamiento de Infomaniak.
Tecnologías para el desarrollo de software
Para utilizar el lenguaje C# y el framework .NET con la implementación Mono, con el fin de desarrollar aplicaciones de software que puedan implementarse y ejecutarse en varias plataformas, fuera del entorno Windows, se recomienda optar por soluciones como:
La flexibilidad y la portabilidad que ofrecen estos entornos multiplataforma significan que un alojamiento web compartido no permite la ejecución de proyectos basados en C#, .NET o Mono.
Enlace a esta FAQ: https://faq.infomaniak.com/607
¿Le ha sido útil esta FAQ?
Esta guía explica cómo modificar una oferta de Alojamiento Web existente para, por ejemplo, poder alojar sitios web adicionales si se ha alcanzado el límite máximo de sitios, o para obtener una solución de alojamiento más reciente y beneficiarse de las últimas versiones de PHP y MySQL.
Pedir sitios web, espacio en disco o direcciones IP adicionales
Para acceder al configurador del alojamiento web:
- Haga clic aquí para acceder a la gestión de su alojamiento en el Panel de control de Infomaniak (¿necesita ayuda?).
- Haga clic en el menú de acciones ⋮ situado a la derecha del alojamiento correspondiente.
- Haga clic en Modificar la oferta:

- Aumente los valores que desea modificar.
- Haga clic en el botón Siguiente para acceder al pago de las modificaciones realizadas en el alojamiento:

Migrar a un servidor más reciente
Para obtener una solución de alojamiento en un servidor más reciente y, por lo tanto, beneficiarse de las últimas versiones de PHP y MySQL, puede...
- … consulte esta otra guía y siga el procedimiento que se indica en ella hasta el final:

- … consulte esta otra guía y siga el procedimiento que se indica en ella hasta el punto 4 y, a continuación, haga clic en el botón para actualizar:

Si no se muestra ninguna barra de información, es que ya dispone de una oferta de alojamiento reciente.
Enlace a esta FAQ: https://faq.infomaniak.com/626
¿Le ha sido útil esta FAQ?
Esta guía detalla la integración del entorno ASP / ASP.NET dentro del ecosistema de Infomaniak.
Compatibilidad e infraestructura
Las soluciones de Alojamiento Web y Servidores Cloud gestionados están optimizadas para entornos Linux/Apache. Por lo tanto, el módulo Apache::ASP no es compatible de forma nativa en estas ofertas compartidas.
Alternativas y soluciones Cloud
Para implementar sus aplicaciones ASP de forma fluida, tiene varias opciones:
- VPS Cloud: instale y configure su propio entorno ASP/IIS o utilice Mono/Core en una distribución de su elección.
- Jelastic Cloud (PaaS): implemente sus aplicaciones ASP.NET Core a través de contenedores Docker con unos pocos clics y con escalado horizontal automático.
- Nube pública: para infraestructuras de alta disponibilidad que utilizan OpenStack, ideal para arquitecturas de microservicios.
Enlace a esta FAQ: https://faq.infomaniak.com/631
¿Le ha sido útil esta FAQ?
Esta guía explica cómo limitar el hotlinking de los archivos alojados en su Alojamiento Web de Infomaniak.
Introducción
- El hotlinking consiste en que un sitio web externo muestre directamente imágenes, vídeos u otros archivos alojados en su servidor utilizando su URL pública, sin alojarlos él mismo.
- Esta práctica utiliza los recursos de su alojamiento (ancho de banda, conexiones HTTP y recursos del servidor) sin su autorización. También puede infringir sus derechos de autor o el control sobre la distribución de sus contenidos.
- Aunque las capacidades de red actuales hacen que el impacto en el ancho de banda sea generalmente menos crítico que antes, sigue siendo recomendable limitar el hotlinking para evitar un consumo innecesario de los recursos de su alojamiento.
Evitar el hotlinking con un archivo .htaccess
Si su sitio web utiliza el servidor web Apache y el módulo mod_rewrite, puede restringir el acceso directo a determinados archivos añadiendo reglas en el archivo .htaccess situado en la raíz de su sitio web.
El ejemplo que se muestra a continuación protege los formatos de imagen más comunes, incluidos los formatos modernos WebP y AVIF:
RewriteEngine On
# Permitir solicitudes sin una cabecera Referer
RewriteCond %{HTTP_REFERER} !^$
# Permitir solicitudes desde su propio dominio (reemplace con su dominio)
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?votre-domaine\.com [NC]
# Permitir los principales motores de búsqueda
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?google\. [NC]
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?bing\. [NC]
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?yahoo\. [NC]
# Bloquear el enlace directo de archivos de imagen
RewriteRule \.(jpg|jpeg|png|gif|svg|webp|avif)$ - [F,NC,L]Debe adaptarse antes de su uso:
- Reemplace
votre-domaine\.comcon su propio nombre de dominio. - Se permiten las solicitudes que no contengan una cabecera HTTP
Refererpara mantener la compatibilidad con ciertos navegadores, aplicaciones o mecanismos de protección de la privacidad que no transmiten esta cabecera. - Las reglas que permiten a los principales motores de búsqueda acceder a las imágenes permiten que estas sean indexadas. Eliminarlas impedirá la indexación de estas imágenes.
- La regla utiliza la opción
[F], que devuelve una respuesta HTTP403 Forbidden. Este método bloquea inmediatamente la solicitud sin proporcionar contenido adicional, lo que limita el consumo de los recursos del servidor.
Si utiliza Cloudflare como CDN delante de su alojamiento de Infomaniak, también puede activar la función Protección contra enlaces directos desde su interfaz de administración para bloquear este tipo de acceso antes de que llegue a su alojamiento.
Enlace a esta FAQ: https://faq.infomaniak.com/678
¿Le ha sido útil esta FAQ?
Esta guía presenta comandos que se pueden ejecutar con el fin de probar una conexión o una red y, de este modo, determinar con mayor precisión la posible fuente del error.
Realizar un Telnet…
TELNET permite probar la conexión a un servidor sin tener en cuenta la configuración adicional de una aplicación de correo electrónico o FTP, lo que permite determinar el origen de un problema. Por ejemplo, si la conexión no se establece con un servidor SMTP, deberá comprobar si su firewall está bloqueando los puertos 587 o 465.
… en macOS
- Busque Utilidad de red.
- Vaya a la pestaña
Ping,LookupoTraceroute, según lo que desee probar. - También puede utilizar una aplicación tipo
Terminal(interfaz de línea de comandos,CLI /Command Line Interface) en su dispositivo y, según lo que desee probar, introduzca:traceroute [servidor]nc [servidor] [puerto]
Reemplace[servidor]por el nombre del servidor o su dirección IP, lo mismo para[puerto]…
… en Windows
Active Telnet previamente si es necesario.
- Utilice una aplicación tipo
Terminal(interfaz de línea de comandos,CLI /Command Line Interface) en su dispositivo, por ejemplo, escribiendo Ejecutar y luegocmd. - En la ventana que se abre, según lo que desee probar, escriba:
tracert [servidor]telnet [servidor] [puerto]
Ejemplo:telnet mail.infomaniak.com 587(permite probar el puerto SMTP si su software/cliente de correo electrónico no permite el envío de correos electrónicos)...
… en Android
- Utilice la aplicación Simple Telnet Client, que permite realizar pruebas de forma muy sencilla mediante dos campos que deben completarse (por ejemplo,
mail.infomaniak.comy el puerto143o993)…
Realizar un PING
PING permite saber si una máquina es accesible a través de Internet. También puede utilizar esta herramienta para comprobar si se está accediendo a la máquina correcta, por ejemplo, después de un cambio de DNS, observando la dirección IP obtenida. Es posible realizar un ping a un nombre de dominio, un hostname o una dirección IP.
El protocolo PING está definitivamente bloqueado en los alojamientos compartidos de Infomaniak.
Enlace a esta FAQ: https://faq.infomaniak.com/727
¿Le ha sido útil esta FAQ?
Esta guía explica cómo trabajar sin el módulo PECL SSH2 client, que no está disponible en los servicios de alojamiento web y servidores en la nube de Infomaniak, utilizando en su lugar la biblioteca phpseclib, que funciona con PHP nativo sin necesidad de una extensión específica.
Introducción
- El uso de
PECL SSH2 clientprovoca errores de tipoNo se encontraron algoritmos de intercambio de claves compatiblesoNo se pudieron intercambiar las claves de cifradoen su última versión disponible. Phpseclibpermite:- La autenticación SSH mediante contraseña o clave privada.
- La ejecución de comandos remotos.
- La transferencia de archivos seguros (SFTP).
- La gestión de claves SSH.
Utilizar phpseclib
Para integrar una conexión SSH en un script PHP, utilice phpseclib de la siguiente manera:
use phpseclib3\Net\SSH2;
use phpseclib3\Crypt\PublicKeyLoader;
$ssh = new SSH2('domain.xyz');
$key = PublicKeyLoader::load(file_get_contents('/path/to/private_key'));
if (!$ssh->login('usuario', $key)) {
exit('Autenticación fallida');
}
echo $ssh->exec('ls -la');Enlace a esta FAQ: https://faq.infomaniak.com/767
¿Le ha sido útil esta FAQ?
Esta guía detalla las acciones que debe realizar como prioridad si no observa ninguna diferencia en su sitio web después de realizar un cambio, en comparación con su versión anterior al cambio. Estos consejos también son válidos si tiene problemas al utilizar la interfaz de los productos de Infomaniak.
Introducción
- Durante su navegación, un navegador web guarda en un espacio reservado los datos consultados, con el fin de evitar tener que solicitar al servidor los datos ya consultados, ahorrando tiempo y recursos.
- Su caché puede contener una gran cantidad de datos y, a veces, el navegador se equivoca. Los sitios web pueden entonces mostrarse incorrectamente o mostrar una versión obsoleta.
- Borrar la caché garantiza que se esté utilizando la versión más reciente de la página o carpeta consultada.
Borrar la caché del navegador web…
… en Safari
Elija su versión de macOS para consultar la guía de ayuda de Apple correspondiente.
… sobre las herramientas de Google (Chrome, Android, etc.)
Consulte la ayuda de Google.
… sobre Firefox
Consulte la guía de Mozilla.
… en Edge / Internet Explorer
Consulte la ayuda de Microsoft.
Enlace a esta FAQ: https://faq.infomaniak.com/793
¿Le ha sido útil esta FAQ?
Esta guía detalla las funciones disponibles para la gestión de bases de datos relacionales en los servicios de alojamiento de Infomaniak.
Uso de vistas, disparadores, procedimientos almacenados y rutinas
En lo que respecta a la gestión de bases de datos relacionales, la funcionalidad de las vistas está disponible de forma predeterminada, lo que permite a los usuarios crear vistas para simplificar la gestión y la presentación de los datos.
Sin embargo, algunas funcionalidades avanzadas que permiten una manipulación más precisa y compleja de los datos, como…
- “disparadores”
- procedimientos almacenados
- rutinas
- y la creación de funciones
… solo están disponibles en los Servidores Cloud.
No están permitidas en los servidores compartidos.
Esta restricción se debe principalmente a los riesgos potenciales para la estabilidad de la infraestructura. Una configuración incorrecta o un uso excesivo de estas funciones podría generar bucles infinitos o sobrecargas importantes, lo que afectaría no solo el rendimiento del servidor en cuestión, sino también la experiencia de todos los clientes alojados en la misma infraestructura.
Solucionar un problema de importación de un archivo de volcado MySQL/MariaDB
Al exportar e importar una base de datos MySQL o MariaDB a través de la interfaz de alojamiento de Infomaniak, es posible que la operación falle debido a errores relacionados con los DEFINER de los disparadores o las vistas. Esto ocurre cuando los objetos de la base de datos se han creado con un usuario específico (denominado definer) que ya no existe en el momento de la importación.
En la práctica, el proceso de exportación e importación utiliza un usuario temporal, que se utiliza únicamente durante estas operaciones. Después de eliminar este usuario, las vistas o los disparadores definidos con esta cuenta como DEFINER se vuelven inválidos, lo que provoca errores como:
Error general: 1449 El usuario especificado como definidor ('xxxx_temp_1'@'%') no existe
Para evitar este problema, es posible corregir el archivo de copia de seguridad (dump.sql o dump.sql.gz) antes de su importación, reemplazando las definiciones de definer por CURRENT_USER. Esto permite asociar automáticamente los triggers y las vistas al usuario actual en el momento de la importación.
Aquí tiene un ejemplo de comando para modificar el archivo de volcado antes de importarlo:
sed -E 's/DEFINER=`[^`][^`]*`@`[^`][^`][^`]*`/DEFINER=CURRENT_USER/g' dump.sql > dump-corrected.sql
Una vez realizado este reemplazo, el archivo corregido se puede importar normalmente a través del Panel de control de Infomaniak. Este comportamiento es conocido y está relacionado con el funcionamiento de los usuarios temporales durante la copia de seguridad/restauración. No se prevén modificaciones en el proceso de exportación/importación a corto plazo, pero el tema sigue en evaluación a nivel de infraestructura.
Para obtener más información sobre la variable CURRENT_USER, consulte la documentación oficial de:
Enlace a esta FAQ: https://faq.infomaniak.com/821
¿Le ha sido útil esta FAQ?
Esta guía explica cómo cambiar la contraseña de una base de datos MySQL/MariaDB de un Alojamiento Web.
Introducción
- Consulte esta otra guía si busca información sobre cómo actualizar los datos de inicio de sesión (scripts, sitios web, etc.) en caso de un cambio de contraseña de la base de datos.
- No se podrá modificar un usuario de base de datos creado tras la instalación de una aplicación web (ofrecida por Infomaniak).
- Para acceder a la base de datos a la que está asociado, deberá crear un nuevo usuario de base de datos con la contraseña que desee y, a continuación, asignarle los permisos correspondientes a la base de datos deseada.
Cambiar la contraseña de MySQL, MariaDB, etc.
Para ello, es necesario modificar el usuario asociado a la base de datos en cuestión y cambiar su contraseña (sin necesidad de proporcionar la contraseña anterior) desde el Panel de control de Infomaniak:
- Haga clic aquí para acceder a la gestión de su alojamiento en el Panel de control de Infomaniak (¿necesita ayuda?).
- Haga clic directamente en el nombre asignado al alojamiento correspondiente:

- Haga clic en Bases de datos en el menú lateral izquierdo.
- Haga clic en el menú Usuarios.
- Haga clic en el menú de acciones ⋮ situado a la derecha del elemento correspondiente.
- Haga clic en Modificar:

- Haga clic en Cambiar contraseña.
- Introduzca la nueva contraseña deseada.
- Haga clic en el botón Guardar:

- Si es necesario, puede configurar los nuevos permisos (lectura / escritura / administración) del usuario para acceder a las bases de datos existentes en el alojamiento.
Enlace a esta FAQ: https://faq.infomaniak.com/846
¿Le ha sido útil esta FAQ?