Puede alojar archivos estáticos como HTML, CSS y JavaScript en un bucket de Object Storage Service (OSS) y servirlos como un sitio web de acceso público. No se requieren servidores tradicionales, lo que reduce los costos operativos y la complejidad técnica.
Sitio web estático estándar
Despliegue un sitio web estático tradicional de varias páginas, como una página corporativa o un escaparate de productos, y garantice un acceso en línea confiable.
Por razones de seguridad, cuando accede a un archivo HTML mediante el nombre de dominio del bucket, los navegadores fuerzan la descarga en lugar de mostrar el archivo en línea. Para permitir que los usuarios vean el sitio web, que es el propósito principal del hosting de sitios web estáticos, debe vincular un nombre de dominio personalizado. Para obtener más información, consulte Access OSS by using a custom domain name . Si su bucket se encuentra en China continental, se requiere un registro ICP para el nombre de dominio personalizado.
Paso 1: Configurar el hosting del sitio web estático
Configure una página principal predeterminada y una página de error para establecer las reglas básicas de acceso.
Vaya a la página Buckets, haga clic en el nombre del bucket de destino y luego, en el panel de navegación izquierdo, haga clic en .
-
Haga clic en Settings y configure los siguientes parámetros:
Default Homepage: Establézcalo en
index.html.-
Subfolder Homepage: Elija si desea habilitar una página principal independiente para subcarpetas según la estructura de su sitio web.
Disabled (Default): Adecuado para sitios web simples que no requieren páginas principales separadas para subcarpetas. Con esta opción, cualquier ruta URL que termine con una barra diagonal (
/) devuelve la página principal predeterminada del directorio raíz.-
Enabled: Recomendado para sitios web complejos con varias secciones de contenido independientes, como
/blog/o/docs/, donde cada sección tiene su propia página principal. Cuando se habilita, también debe configurar la Subfolder 404 Rule para definir cómo responde el sistema cuando un usuario solicita un archivo que no existe:Redirect (Default): Redirige a la URL del directorio. Si un archivo solicitado no existe, el sistema busca una página principal en el directorio correspondiente. Si existe, el sistema devuelve una respuesta de redirección
302y la barra de direcciones del navegador se actualiza a la ruta del directorio. Por ejemplo,.../subdircambia a.../subdir/.Index: Devuelve el contenido de la página principal directamente. Similar a Redirect, pero si se encuentra una página principal, el sistema devuelve su contenido con un código de estado
200. La barra de direcciones del navegador permanece sin cambios.-
NoSuchKey: Devuelve un error 404 directamente. Esta es la regla más estricta. Si un archivo solicitado no existe, el sistema devuelve un error
404, independientemente de si existe una página principal en el directorio correspondiente.
Default 404 Page: Establézcalo en
error.html.Error Page Status Code: Seleccione 404.
Haga clic en Save.
Paso 2: Cargar archivos del sitio web
Cargue sus archivos HTML preparados al bucket para proporcionar contenido a su sitio web.
Descargue y extraiga el archivo de muestra html.zip, o utilice sus propios archivos de proyecto.
En el panel de navegación izquierdo, haga clic en .
-
Arrastre los archivos de muestra o sus archivos de proyecto existentes a la ventana de carga. Una vez que los archivos se agreguen a la lista, haga clic en Upload Object.
NotaAl actualizar el contenido del sitio web, cargar un objeto con el mismo nombre sobrescribe directamente el objeto existente. No es necesario eliminar primero el objeto anterior. Una sobrescritura reemplaza todo el objeto y el contenido previo ya no se conserva. Si el control de versiones está habilitado para el bucket, la sobrescritura conserva la versión anterior, que puede utilizar para revertir cambios. Si el control de versiones no está habilitado, la sobrescritura no se puede deshacer.
Paso 3: Establecer permisos del bucket
Configure permisos de lectura pública para que el contenido de su sitio web sea accesible para los usuarios de Internet.
El permiso de lectura pública hace que todos los objetos del bucket sean accesibles públicamente. Cualquier persona que conozca la URL de un objeto puede descargarlo. Por lo tanto, utilice este bucket únicamente para recursos públicos como HTML, CSS y JavaScript. Almacene datos sensibles en un bucket separado con controles de acceso más estrictos.
-
La función Block Public Access se habilita de forma predeterminada al crear un bucket de OSS. Esta función le impide establecer la lista de control de acceso (ACL) del bucket como public-read o public-read-write. Debe deshabilitar esta función primero.
En el panel de navegación izquierdo, haga clic en .
Haga clic en el interruptor Block Public Access. En el cuadro de diálogo que aparece, introduzca I confirm that I want to disable Block Public Access y luego haga clic en OK.
-
Establezca los permisos de acceso del bucket como public-read.
Vaya a la pestaña Access Control List y haga clic en Set.
Establezca Bucket ACL en Public Read. En el cuadro de diálogo que aparece, haga clic en Continue.
Haga clic en Save.
Paso 4: Verificar la configuración del sitio web
Pruebe su sitio web para confirmar que la función de hosting de sitios web estáticos funciona correctamente.
-
Verificar el acceso a la página principal: En un navegador, vaya a su nombre de dominio personalizado, por ejemplo,
http://example.com, para ver el resultado.Si la página muestra la página principal predeterminada para el hosting de sitios web estáticos de OSS, titulada Welcome to OSS con el subtítulo This is a static homepage, y tiene tres botones (Product Details, Product Console y Product Documentation) en la parte inferior, su configuración de hosting de sitio web estático funciona correctamente.
-
Verificar la página 404: En un navegador, intente acceder a un archivo que no exista, por ejemplo,
http://example.com/missing-object.Si la página muestra el título Welcome to OSS y el mensaje This is a 404 page, su página de error 404 está configurada correctamente.
Aplicación de página única (SPA)
Aloje una aplicación de página única (SPA) con soporte para enrutamiento del lado del cliente y actualizaciones de página.
Por razones de seguridad, cuando accede a un archivo HTML mediante el nombre de dominio del bucket, los navegadores fuerzan la descarga en lugar de mostrar el archivo en línea. Para permitir que los usuarios vean el sitio web, que es el propósito principal del hosting de sitios web estáticos, debe vincular un nombre de dominio personalizado. Para obtener más información, consulte Access OSS by using a custom domain name . Si su bucket se encuentra en China continental, se requiere un registro ICP para el nombre de dominio personalizado.
Paso 1: Configurar el hosting de SPA
Configure los parámetros de hosting para garantizar que el enrutamiento del lado del cliente funcione correctamente.
Vaya a la página Buckets, haga clic en el nombre del bucket de destino y luego, en el panel de navegación izquierdo, haga clic en .
-
Haga clic en Settings y configure los siguientes parámetros:
Default Homepage: Establézcalo en
index.html.Subfolder Homepage: Seleccione Disabled. Con esta configuración, cualquier solicitud al dominio del sitio web estático o cualquier URL bajo ese dominio que termine con una barra diagonal (
/) devuelve la página principal predeterminada del directorio raíz.Default 404 Page: Establézcalo en
index.html(configuración crítica: redirige todas las rutas al punto de entrada de la aplicación).Error Page Status Code: Seleccione 200 (garantiza que las transiciones de ruta devuelvan el código de estado correcto).
Haga clic en Save.
Paso 2: Cargar archivos de la aplicación
Cargue sus archivos de SPA al bucket para completar el despliegue.
Descargue y extraiga la aplicación de muestra demo.zip, o utilice sus propios archivos de aplicación.
En el panel de navegación izquierdo, haga clic en .
Arrastre todos los archivos del directorio
demoo sus propios archivos de aplicación a la ventana de carga. Una vez que todos los archivos se agreguen a la lista, haga clic en Upload Object.
Paso 3: Establecer permisos del bucket
El permiso de lectura pública hace que todos los objetos del bucket sean accesibles públicamente. Cualquier persona que conozca la URL de un objeto puede descargarlo. Por lo tanto, utilice este bucket únicamente para recursos públicos como HTML, CSS y JavaScript. Almacene datos sensibles en un bucket separado con controles de acceso más estrictos.
Configure permisos de acceso público para que su SPA sea accesible para los usuarios.
-
Deshabilite Block Public Access para el bucket.
En el panel de navegación izquierdo, haga clic en .
Haga clic en el interruptor Block Public Access. En el cuadro de diálogo que aparece, introduzca I confirm that I want to disable Block Public Access y luego haga clic en OK.
-
Establezca los permisos de acceso del bucket como public-read.
Vaya a la pestaña Access Control List y haga clic en Set.
Establezca Bucket ACL en Public Read. En el cuadro de diálogo que aparece, haga clic en Continue.
Haga clic en Save.
Paso 4: Verificar el despliegue de la aplicación
Pruebe su sitio web para confirmar que la SPA gestiona correctamente las transiciones de ruta.
-
Verificar el acceso a la página principal: En un navegador, vaya a su nombre de dominio personalizado (por ejemplo,
http://example.com) para acceder a la SPA. El resultado se muestra en la siguiente figura.
Verificar el comportamiento 404: En un navegador, intente acceder a un archivo que no exista, por ejemplo,
http://example.com/missing-object. La solicitud se redirige al punto de entrada de la aplicación y se devuelve un código de estado200 OK.
Despliegue en un entorno de producción
Configure las siguientes optimizaciones de seguridad y rendimiento para tener un sitio web estático listo para producción.
Mejores prácticas
-
Transporte seguro: Habilitar acceso HTTPS
Los navegadores modernos muestran advertencias de "no seguro" para sitios web HTTP, y los motores de búsqueda posicionan mejor a los sitios HTTPS. Fuerce el acceso HTTPS para su nombre de dominio personalizado siguiendo la guía para access OSS over HTTPS. HTTPS utiliza TLS/SSL para cifrar los datos en tránsito, lo que previene el robo o la manipulación de datos.
-
Optimización del rendimiento: Configurar aceleración CDN
Si su sitio web estático atiende a una audiencia global o maneja tráfico de alta concurrencia, configure CDN acceleration para almacenar contenido en caché en nodos perimetrales de todo el mundo. Esto mejora la velocidad de acceso y reduce los costos de tráfico de OSS.
Una vez habilitada la aceleración CDN, las páginas se sirven desde el contenido almacenado en caché en los nodos perimetrales. Después de sobrescribir un archivo, las solicitudes aún pueden devolver la versión anterior hasta que expire la caché. Por lo tanto, tras actualizar el contenido del sitio web, actualice la caché de CDN para los archivos o directorios modificados y verifique el sitio web solo después de que se complete la actualización. Esto evita que una página obsoleta se confunda con una versión fallida.
-
Intercambio de recursos de origen cruzado (CORS): Configurar reglas CORS
Las SPA suelen llamar a API de backend o acceder a recursos de terceros, lo cual puede verse restringido por la política del mismo origen del navegador. Configure CORS rules para especificar orígenes, métodos y encabezados permitidos, de modo que su aplicación pueda acceder a las API y recursos externos necesarios.
-
Gestión de versiones: Implementar versiones y reversiones
Habilite versioning de OSS e integrelo con herramientas de automatización como Jenkins para crear un flujo de trabajo CI/CD que permita versiones rápidas y reversiones de emergencia.
Mitigación de riesgos
-
Prevención de robo de ancho de banda: Configurar protección contra hotlinking
Otros sitios web que enlazan directamente a sus recursos estáticos aumentan los costos de tráfico y la carga del servidor. Configure Referer-based hotlink protection para crear una lista de permitidos de dominios autorizados y evitar el uso no autorizado del ancho de banda.
-
Monitoreo de acceso: Habilitar registros de acceso
Habilite real-time log query para registrar todas las solicitudes de acceso. Esto le ayuda a identificar patrones de acceso inusuales, analizar el comportamiento de los usuarios y optimizar el rendimiento del sitio web.
Preguntas frecuentes
Error 404 al actualizar página en SPA
En una aplicación de página única, todas las rutas son gestionadas por JavaScript del lado del cliente. Cuando accede directamente o actualiza una ruta que no es la raíz, el servidor no puede encontrar un archivo físico correspondiente. Para resolver esto, establezca la Default 404 Page en index.html y el Error Page Status Code en 200. Esta configuración redirige todas las rutas "no encontradas" al punto de entrada de la aplicación, lo que permite que el router del lado del cliente las gestione correctamente.
Deshabilitar el hosting de sitio web estático
Vaya a la página Buckets, haga clic en el nombre del bucket de destino y luego, en el panel de navegación izquierdo, haga clic en .
Haga clic en Settings, borre las configuraciones de Default Homepage y Default 404 Page, y luego haga clic en Save para deshabilitar la función de hosting de sitio web estático.
Soporte para contenido dinámico
El hosting de sitios web estáticos admite únicamente archivos estáticos como HTML, CSS y JavaScript. No son compatibles lenguajes del lado del servidor como PHP, Python o Java. Para funcionalidad dinámica, utilice renderizado del lado del cliente con un framework de frontend o llame a API de backend mediante servicios serverless como Function Compute.