FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Cita:
Hola dec, ¡qué bueno que sigas trabajando en ello! ¿Humm cuenta con algún sistema de autenticación? De no ser así, emho lo consideraría antes que un administrador (que tampoco entendí muy bien qué sería ) o bien como un plugin de fábrica. Tampoco entiendo eso de los múltiples dominios. ¿Podrías explayarte? // Saludos |
#2
|
||||
|
||||
Hola,
Cita:
Cita:
Un "administrador" vendría a ser una especie de gestor de contenidos incorporado en el propio sistema. Para esto ya, lógicamente, sí que necesitaría de algún tipo de autenticación, aunque, en realidad bastaría con una constante de configuración/contraseña. Pero como dije más arriba creo que la idea de tal administrador está un tanto desencaminada y creo que algo así no es preciso en Humm. Cita:
Pensemos que ahora Humm cuenta con dos directorios raíces: \Humm\System\ \Humm\Site\ En este último directorio se encuentran las vistas, estilos, scripts, imágenes, etc., del sitio web que Humm gestiona. Ahora bien, lo que se persigue sería contar con directorios como: \Humm\Sites\Default\ \Humm\Sites\MiOtroSitio\ \Humm\Sites\OtroSitioMas\ Etcétera. De manera que todos esos directorios se correspondiesen con diferentes dominios o "host" o como mejor se diga. Lo que ocurre con esto es que estoy un poco pez, pero, en todo caso, creo que se trata de cambiar determinada configuración en el servidor, por ejemplo Apache. Porque, de lo que se trata, es que diferentes URLs (www.ejemplo.com, www.otrositio.com, etc.) apunten al mismo "script", precisamente, al "index.php" o "punto de entrada" de Humm. Por otro lado huelga decir que Humm tendrá que determinar qué sitio o contenido ha de servir. Creo que esto último se basa, más o menos sencillamente, en la variable "$_SERVER" y valores como "HTTP_HOST", puesto que a partir de ahí podría determinarse de qué "host" se trata y por tanto qué directorio de sitio ha de usarse. No sé si más o menos he conseguido explicarme. Gracias por tu interés Román. |
#3
|
||||
|
||||
Lo de las urls distintas apuntando al mismo sitio, creo que lo puedes resolver con servidores virtuales (en Apache). Pero eso ya implicaría meterse con la configuracion del servidor.
// Saludos |
#4
|
||||
|
||||
Hola,
Cita:
De todas formas el asunto (del lado de HummPHP) no es tan sencillo como puede parecer en un primer momento. Le estado dando unas cuantas vueltas y no he seguido adelante, pero, es algo que me gustaría añadir. Y el caso es que no he parado aún y sigo trabajando en el proyecto a marchas forzadas. De hecho espero hoy mismo publicar aquí lo que llevo hecho de esta versión 2.0, para que los que queráis podáis echar un vistazo al engendro. |
#5
|
||||
|
||||
Hola de nuevo,
Venga, que no se diga... aquí os dejo adjunto lo que va de HummPHP 2.0, prácticamente terminado, por otro lado. Si queréis echar un vistazo ya sabéis que podéis montar un servidor de manera sencilla usando Xampp. Por otro lado, si queréis trastear un poco con el código os recomiendo que lo hagáis con NetBeans para PHP. Y eso es todo, espero que lo disfrutéis. Cualquier comentario, reporte de error, etc., será bienvenido. Última edición por dec fecha: 25-04-2014 a las 01:59:43. |
#6
|
||||
|
||||
. |
#7
|
||||
|
||||
Captado este asunto de la configuración de Apache, parece que, en efecto, HummPHP debería poder lidiar con distintos sitios... así que ya estoy en ello.
|
#8
|
||||
|
||||
Hola,
Menos de una hora... eso me ha costado implementar en HummPHP la posibilidad de manejar diferentes sitios (dominios) con una misma base de código. Lo que parecía que iba a complicar las cosas, los espacios de nombres en PHP, han resultado por el contrario de gran ayuda. De hecho Humm cumple ahora mismo con cierto estándar que implica usar los mismos espacios de nombres que el árbol de directorios en que se encuentran. Todavía me queda "refactorizar" un poco y darle alguna que otra vuelta, pero, en efecto, HummPHP cuenta ahora con un directorio "Sites" en lugar de "Site". Dentro de este directorio se puede encontrar otro de nombre "Main". Este será el directorio por defecto y contendrá todo lo necesario para un sitio: vistas, clases, plugins, archivos de lenguaje, etc. Este directorio podrá replicarse, por decirlo así, tantas veces como se quiera, en diferentes subdirectorios de "Sites". El truco estará en el nombre de dichos directorios, que, habrán de corresponderse con el "nombre del servidor" ($_SERVER['name']) "capitalizado" (por seguir la convención), es decir, supongamos que tenemos dos dominios: www.juanito.com y www.pepito.com. Instalamos Humm en www.juanito.com, por ejemplo, de manera que este dominio "cargará" el sitio principal o predeterminado en HummPHP (situado en el directorio "Main"). A continuación tendremos que buscarnos la vida para configurar el servidor (en Apache, al menos "en local" no es complicado) de manera que todas las peticiones al dominio www.pepito.com apunten al mismo directorio en que se encuentra copiado HummPHP en www.juanito.com El "truco" estará entonces en crear un nuevo directorio en "Sites" de nombre "Juanito", en este caso, replicando los directorios del sitio principal. En principio no habría más que hacer, puesto que las clases (de vistas, por ejemplo) y los plugins son opcionales, pero, en caso de hacer uso de esta característica, dichas clases y plugins deberán estar en el espacio de nombres "Humm\Sites\Pepito\Classes", para las clases, y "Humm\Sites\Pepito\Plugins" para los plugins. Y eso es todo... lo que en realidad se comparte entre los dos sitios es el directorio "System" de HummPHP, lo que equivale a decir todo el sistema, puesto que lógicamente cada sitio tendrá su propio contenido... pues por algo son sitios diferentes. Por otro lado los sitios podrían compartir ya los plugins del sistema, pero, veré si se me ocurre algún otro lugar donde situar los plugins compartidos por difentes sitios: al fin y al cabo creo que sólo se trata de añadir una ruta más al "gestor de plugins". Por lo demás los sitios pueden compartir clases PHP sencillamente gracias al espacio de nombres de PHP y a cómo "carga" las clases el sistema, equiparando el espacio de nombres con el árbol de directorios. De este modo podríamos tener dentro del directorio "Sites" un directorio de nombre "Shared" o "Classes", que, usando el espacio de nombres apropiado, sólo nos tendríamos que preocupar de usar cuando nos hicieran falta, ocupándose el sistema de encontrarlas y cargarlas. En fin... creo que he tardado más en soltar este rollo que en conseguir (al menos de momento) el objetivo. Creo que yo seré el primero en usar esta característica "multisitio" de HummPHP, pues, si puedo configurar el servidor, cuando rehaga mis sitios, todos ellos van a compartir la misma copia de Humm, cosa que me ahorrará tiempo y trabajo si por ejemplo decido actualizar el sistema, etc. ¡Y no digo más! |
#9
|
||||
|
||||
Hola de nuevo,
Pues nada... más novedades. A través de "CPanel" (el "hosting" que uso lo proporciona) resulta de lo más sencillo hacer que varios dominios apunten a un mismo directorio. Se trata de dominios añadidos o "addons" y no hay que andarse configurando "virtual host" ni nada por el estilo: simplemente se indica el directorio al que tiene que apuntar un dominio. Y a funcionar. |
#10
|
||||
|
||||
Hola,
Quiero explicar aquí cómo se puede configurar el servidor Apache (al menos la distribución que se incluye en Xampp) para crear "virtual host", puesto que es algo que no había usado hasta ahora y veo que tiene utilidad, no sólo para comprobar sistemas "multisitio" como HumPHP, pero, también a la hora de trabajar en nuestro ordenador y en su servidor local. Hasta ahora yo usaba URLs del tipo "http://127.0.0.1/HumPhp", "http://127.0.0.1/OtraCosa" , etc. Pero, veréis lo sencillo que es configurar Apache y Windows para que podamos utilizar URLs como "www.hummphp.dev" y "www.otracosa.dev", por ejemplo. 1º Paramos Apache si está en marcha 2º Abrimos el archivo "xampp\apache\conf\extra\httpd-vhosts.conf" y añadimos: Código:
<VirtualHost *:80> DocumentRoot "/xampp/htdocs/HummPhpSite" ServerName hummphp.dev </VirtualHost> <VirtualHost *:80> DocumentRoot "/xampp/htdocs/HummPhpSite" ServerName www.hummphp.dev </VirtualHost> Código:
127.0.0.1 hummphp.dev 127.0.0.1 www.hummphp.dev |
#11
|
||||
|
||||
Cita:
// Saludos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Componente Hashes, para quien pueda interesar | dec | OOP | 11 | 09-07-2007 01:36:04 |
Utilidad para comparar dos bases de datos. | avmm2004 | Varios | 1 | 16-11-2006 20:47:22 |
Utilidad para contar lineas de código | Alexander | Varios | 10 | 18-10-2006 00:14:55 |
Utilidad para manejo de lista TODO | ANG4L | Varios | 3 | 02-08-2006 09:36:39 |
|