2011-01-08 24 views
14

¿Cómo ofrezco la aplicación Basecamp/SAAS como subdominios a los clientes?Cómo ofrecer subdominios personalizados para la aplicación SAAS

Por ejemplo, mi URL del sitio web es http://www.example.com cada vez que el registro de usuario i quieren ofrecerles URL como http://company.example.com la que se debe cargar archivos/contenidos de /app directorio de la página web.

Y después quiero que ellos elegir su propio dominio/subdominio a través de CNAME, para que puedan tener URL como http://clients.mywebsite.com

Quiero hacer esto en PHP puro y .htaccess y offcourse todo sucede automáticamente.

y quiero mantener la estructura misma URL .., es decir http://company.example.com/login, http://company.example.com/accounts, http://company.example.com/files/style.css pesar de que estos archivos se encuentran en el interior /app directorio quiero que ellos pueden acceder de esta manera.

Puedo manejar todas las funciones de PHP, necesito ayuda con los códigos .htaccess y cómo abordar CNAME.

Respuesta

11

Asegúrese de DNS resuelve todos los subdominios mediante la inclusión siguiente en la zona de dominio:

*.example.com. 14400 IN A HereBeIP 

A continuación, configurar el servidor web para reconocer todas las peticiones entrantes, para Apache, es necesario agregar siguiente para VirtualHost:

ServerAlias *.example.com 

Eso es todo. Lo único que queda es la lógica en el código, debe verificar el nombre del host para ver si se realizó una solicitud a example.com o foo.example.com.

Actualizado con más detalles.

Así, suponiendo que sus archivos están en /path/to/files/app, es necesario configurar la máquina virtual como esto:

<VirtualHost> 
    SeverName example.com 
    ServerAlias *.example.com 
    DocumentRoot /path/to/files/app 
    # plus what else is needed 
</VirtualHost> 

De esta manera todas las solicitudes se resolverá a /app directorio. Para probarlo, aplique la configuración anterior de DNS o simplemente agregue los dominios que desee probar en su archivo hosts, /etc/hosts en Linux o c:\Windows\System32\drivers\etc\hosts en Windows.

+0

Cómo hago esto con .HTACCESS, quiero decir cuando se envía una solicitud (http://company.example.com) php mostrará la página en consecuencia, pero quiero mantener la misma estructura de URL. –

+0

en resumen, no puede con .HTACCESS –

+0

Como dijo Dagon, no puede hacerlo con .htaccess. Asegúrese de aplicar las configuraciones anteriores, lo que queda es solo la configuración de Apache para apuntar a la misma estructura. –

Cuestiones relacionadas