Ofrezco a mis clientes una aplicación web alojada en servidores dedicados, para que los clientes puedan registrarse en el sitio web y utilizar el servicio utilizando la URL: mywebsite.com/client.
¡El servicio está funcionando y no tengo ningún problema con él!
De hecho, me gustaría agregar una nueva opción a la aplicación y permitir que los clientes usen su propio dominio.PERO¡Tengo la aplicación todavía alojada en mis servidores!
Ahora me gustaría saber cómo puedo agregar nuevos dominios a mi servidor (sé que deberían apuntar a mis servidores de nombres) automáticamente y mediante scripts PHP.
Entonces los clientes agregan el dominio, obtienen las URL e IP de NS y, después de cambiar los servidores de nombres de dominio, pueden usar el servicio usando su nombre de dominio.
Estoy bastante seguro de que necesito editar el archivo de configuración de Apache para eso, pero no tengo idea de qué modificación se debe hacer.
En general, me gustaría que todos los dominios de los clientes se agreguen como un dominio adicional a mi dominio donde está alojada la aplicación. ¡Entonces puedo obtener el nombre de dominio como identificador de usuario!
*Yo uso Centos y también el panel web centos.
Respuesta1
Habrá una gran variedad de arquitecturas de soluciones que le permitirán hacer esto; describiré dos de ellas, que se encuentran en el extremo técnico y no técnico del espectro.
Lo que estás buscando aquí podría llamarse software de empresa de hosting o similar, pero necesitas un sistema que tenga una API para integrarse con tu sistema de software.
En el extremo no técnico, he escuchado a personas usarhttps://www.whmcs.com/, que sé que tiene integración para CMS, facturación, servidor web y servidor de base de datos comunes. Para administrar la configuración de su propio dominio, necesitará administrar también un servidor DNS o usar uno que tenga una API. Por ejemplo, podría utilizar Amazon Route53 para eso o dejar que WHMCS administre su propio servidor DNS, por ejemplo BIND.
En el aspecto técnico, administro las configuraciones del servidor web, incluidos los nombres de dominio, con Ansible y tengo la intención de integrarlo con un panel de control basado en PHP desarrollado a medida. Tanto Ansible como PHP directamente pueden usar la API de Amazon Route 53, por lo que esto también permitiría una automatización completa.
De cualquier manera, según cómo formule su pregunta, hay muchas piezas de arquitectura que ensamblar e implementaciones probadas. Buena suerte