¿es posible configurar múltiples dominios locales en localhost en ubuntu 14.04?
<p>necesito dominios únicos y múltiples, todos vinculados a la dirección ip local de mi computadora. esto es para fines de prueba. quiero poder tener diferentes dominios locales vinculados a diferentes archivos html en mi computadora. por ejemplo, xxx.local y yyy.local serán distintos pero solo accesibles desde mi computadora.</p><p>lo que he intentado: configurar los sitios habilitados y apagados de apache2 para que los archivos .conf de xxx.local e yyy.local estén vinculados a diferentes documentroots. sin embargo, no está resuelto, y cuando los vinculo a la dirección ip local de mi computadora, ambos simplemente se vinculan a archivos html ya vinculados al host local de mi computadora. no a los archivos html especificados por documentroot en los archivos .conf.</p>
<p>la mayor parte del trabajo se realiza en el archivo de configuración en el directorio <code>/etc/apache2/sites-enabled/</code>, en un archivo llamado algo así como 000-default.conf. estos archivos le permitirán tener múltiples dominios virtuales, como www.example.dev, o example.local, etc. los configura junto con sus directorios en este archivo e ingresa múltiples sitios en <code>/etc/hosts</code> para que coincidan . todos los sitios tienen la misma dirección ip localhost, pero el nombre lo dirige al host virtual correcto.</p><p>en este archivo, debe clonar la configuración predeterminada tantas veces como sea necesario, con algo como esto:</p><p><strong> contenido original </strong></p><pre><code>&lt;virtualhost *:80&gt; . . . &lt;/virtualhost&gt; </code></pre><p><strong> entradas de host virtuales adicionales </strong></p><pre><code>&lt;virtualhost *:80&gt; &lt;directory /var/www/html/site1&gt; options indexes followsymlinks multiviews allowoverride all order allow,deny allow from all &lt;/directory&gt; documentroot /var/www/html/site1/ servername site1.local serveralias www.site1.local &lt;/virtualhost&gt; &lt;virtualhost *:80&gt; &lt;directory /var/www/html/site2&gt; options indexes followsymlinks multiviews allowoverride all order allow,deny allow from all &lt;/directory&gt; documentroot /var/www/html/site2/ servername site2.local serveralias www.site2.local &lt;/virtualhost&gt; . . . </code></pre><p>para que la magia de reescritura funcione, también debes asegurarte de que el motor de reescritura esté habilitado. esto se hace creando un enlace simbólico en mods-enabled para un módulo en mods-available. si ha cd a <code>/etc/apache2/mods-enabled</code>, luego ingrese <code>ln -s ../mods-available/rewrite.load</code>, habilitará el motor de reescritura.</p><p>luego, en <code>/etc/hosts/</code>, tiene entradas coincidentes como esta:</p><pre><code>127.0.0.1 site1.local 127.0.0.1 site2.local </code></pre><p>esto debería ayudarlo hasta que yo complete esto o tenga preguntas para que yo responda.</p><p><strong> respuestas a preguntas en los comentarios 1 </strong></p><p>un problema es la directiva "documentroot": se supone que el directorio especificado es simplemente la raíz del documento del sitio virtual, que probablemente no sea "<code>/var/www/arcadr.local/html</code>" como se especifica. normalmente el directorio del sitio estaría al final. "arcadr.local" es un nombre arbitrario, pero probablemente lo mejor sea hacer coincidir el sitio. por lo tanto, probablemente debería ser "'/var/www/html/arcadr.local/'".</p><p>en cuanto al error de ln, si hubiera tenido más tiempo, le habría explicado que la conclusión es que necesita un enlace simbólico llamado "rewrite.load" en el directorio <code>mods-enabled</code> que se vincula al archivo real en el <code>mods-available</code> directorio. evidentemente, ya lo tenía, y realmente no necesitaba volver a hacerlo, pero mientras esté allí, debería funcionar.</p><p>pruebe el cambio único y también trate de comprender lo que está haciendo. en realidad, es bastante comprensible, y una vez que comience a comprender, aprenderá más.</p><p>por cierto, la directiva "alias" no es necesaria, solo agregué eso para ilustrar cómo podría hacerlo si lo desea.</p><p><strong> respuestas a preguntas en los comentarios 2 </strong></p><p>el archivo html predeterminado es simplemente uno de los varios hosts virtuales especificados en el archivo 000-default.conf. tenga en cuenta que originalmente dejé la extensión ".conf" del archivo. ¿encontraste el archivo correcto? debe estar en "<code>sites-enabled</code>", no en "<code>sites-available</code>". igual que para las modificaciones, puede tener múltiples sitios <em> disponibles </em>, pero necesita tener uno <em> habilitado </em>, y el valor predeterminado es " <code>000-default.conf</code> "(a menos que haya cambiado desde que lo configuré).</p><p>dices "arcadr.local simplemente me redirige a otro sitio web .local conectado a mi localhost". asegúrese de tener este archivo de configuración configurado correctamente. debería tener una serie de bloques, como html:</p><pre><code>&lt;virtualhost *:80&gt; . . . &lt;/virtualhost&gt; </code></pre><p>cada host virtual debe comenzar y finalizar con estas directivas, y no puede tener una incrustada en otra.</p><p>puede encontrar buena documentación y ejemplos en el sitio web de apache.org. aquí es donde aprendí a configurar los archivos. mi consejo es que sea simple, y si agrega algo que no comprende, hágalo paso a paso y elimine todo lo que no funciona. aquí hay algunos ejemplos: <a href="https://httpd.apache.org/docs/2.4/vhosts/examples.html">ejemplos de virtualhost</a> </p><p><strong> algunos punteros adicionales </strong></p><p>cada vez que realice cambios en el archivo de configuración en <code>/etc/apache2/sites-enabled/000-default.conf</code>, debe reiniciar el servidor apache. yo uso el comando <code>sudo /etc/init.d/apache2 restart</code> para hacer esto. <strong> editar </strong>: gabriel publicó un comando mejor para esto:</p><p><code>sudo service apache2 restart</code></p><p>pero ambos comandos funcionarán, al menos por ahora.</p><p>esta misma técnica funciona para servidores dns dinámicos como noip.com, dyndns, etc. por ejemplo, acabo de crear 3 sitios de muestra en mi sistema doméstico. si mi computadora está encendida, puedes intentar verla. si marca, verá que los 3 sitios tienen exactamente la misma dirección ip, pero vaya a diferentes sitios virtuales (variaciones en el valor predeterminado, que puede ver en <code>leftcoast.noip.us</code></p><pre><code>http://site1.leftcoast.noip.us/ http://site2.leftcoast.noip.us/ http://site3.leftcoast.noip.us/ </code></pre>
<p>para hacer redireccionamientos 301, necesitará tener un registro a que apunte a un servidor web válido. luego puede indicar al servidor web que redirija a las personas, por ejemplo. con el .htaccess de apache:</p><pre><code>redirect 301 / http://www.example.com </code></pre><p>los registros mx se pueden crear como de costumbre.</p> en realidad, hay 4 conjuntos de dirección administrada localmente rangos que puede ser utilizado en su red sin miedo a los conflictos, asumiendo que nadie más ha asignado estos en la red:x2-xx-xx-xx-xx-xx x6-xx-xx-xx-xx-xx xa-xx-xx-xx-xx-xx xe-xx-xx-xx-xx-xx sustituyendo x por cualquier valor hexadecimal. Si si se puede, pero es más complejo ya que tendrías que instalar un servidos IIS y un firewall de windows, no el que viene por default, sino un servidor de firewall, ademas de configurarle los parámetros y poder revisar e incluso vetar que puertos páginas y horarios pueden usar las maquinas y saber que ancho de banda usan y que hicieron, es algo bastante complicado. <p>redirectmatch de mod\_alias ​​no es tan poderoso como mod\_rewrite. si tiene mod\_rewrite en su host (por ejemplo, pretty permalinks lo utiliza), podría hacer la redirección solo si la url no está en el formato de enlace de archivo.</p><p>para probar ese caso, hay <a href="http://httpd.apache.org/docs/2.0/mod/mod\_rewrite.html#rewritecond"><code>rewritecond</code></a> y para realizar el comando de redireccionamiento, hay <a href="http://httpd.apache.org/docs/2.0/mod/mod\_rewrite.html#rewriterule"><code>rewriterule ... [r=301]</code></a> directiva.</p><p>un ejemplo basado en sus datos:</p><pre><code>rewritecond %{request\_uri} !^/((20|19)[0-9]{2})/([0-9]{2})/[0-9]{2}$ [nc] rewriterule ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ http://&lt;domain&gt;/$4 [r=301,l] </code></pre><p>esto no está probado, pero creo que debería hacer el trabajo. he usado el cuantificador ({2}) para especificar mejor cuántos números espera. además de eso, en el rewritecond he creado un patrón que solo coincide con los 20 y 19 años.</p><p>la primera línea (la condición, <code>rewritecond</code>) comprueba que no coincida con una url de archivo y solo si no coincide, se ejecutará la regla para hacer la redirección. la <code>rewriterule</code> básicamente hace lo mismo que su directiva <code>redirectmatch</code>.</p> Los comandos ping se pueden implementar de dos formas. Una con ICMP, mira aquí:  
http://www.redes.upv.es/~mperez/rc2/transpa/tema4\_archivos/frame.htm  
La otra con TCP o UDP, pero debe existir un servidor de ping al otro lado. En la URL que te he dado hay unas transparencias sobre ICMP, cabecera, ping y más.  
En http://www.redes.upv.es/~mperez/rc2 hay información mas general. Tenés varias ocpciones, pero la mejor, sin duda es ésta:  
Instalate el software (misma versión) en el nuevo servidor.  
Hacé el setup como si fuese un server nuevo pero con exactamente los mismos nombres que el anterior (no solo nombre del server, sino, nombre de la organización y del dominio, como así también del administrador.  
Luego de hacer esto, hace una copia de todos los archivos contenidos en el direcotrio Data y sus subdirectorios.(Del servidor viejo al servidor nuevo)  
Asegurate de que se encentre copiado el archivo server. Id (o como se llame) y el cert. Id, si es que lo tenés en el server Te lo cuento por encima, ya que lo mejor que puedes hacer es buscar en google, como funciona el sistema de archivos. Mira, el sistema de archivos en unix es diferente. Los archivos y carpetas las crea un usuario que este puede dar permisos a otros usuarios o no. Una vez entiendas que hay root(master), usuarios y grupos para dar permiso, veras que si creas un usuario nuevo se te creara una carpeta nueva en el sistema de ficheros. Esta carpeta esta en /home/(usuario). Es aquí dentro donde el usuario puede dejar sus archivos. Por cada usuario que crees, se creara una carpeta con su nombre i cada uno podrá hacer lo que quiera en su carpeta /home/(usuarios), pero no, en la carpeta de otro usuario, ya que no tendrá permiso.   
En definitiva dentro de /home/(tuusuario) es donde puedes guardar tus archivos.   
Pero sigo recomendándote que te leas el formato de sistema de archivos de unix, lo entenderás mucho mejor como funciona todo, y no es muy largo ni pesado.  
¿Alguna duda más...? :-D prueba lo siguiente para crear un lanzador para abrir un sitio web con firefox y añadirlo al dock de ubuntu. cree un nuevo archivo, por ejemplo mywebsite.desktop en su ~/.local/share/applications/ directorio. puede hacerlo ejecutando lo siguiente en el terminal touch ~/.local/share/applications/mywebsite.desktop abra este archivo con un editor de texto, por ejemplo, ejecutando gedit ~/.local/share/applications/mywebsite.desktop añade las siguientes líneas a este archivo y guarda el archivo [desktop entry] comment=open xyz website terminal=false name=xyz website exec=firefox website-url type=application icon=applications-internet nodisplay=false en lugar de website-url ponga la dirección que desea visitar, por ejemplo https://askubuntu.com para ask ubuntu. también edite el comment= y name= campos en consecuencia. haga clic en ' actividades ' en la barra superior o ' mostrar aplicaciones ' en el dock y busque 'xyz website'. debería aparecer. haz clic con el botón derecho y selecciona 'añadir a favoritos'. <p>creo que está simplificando demasiado los tipos de alojamiento que podría obtener. aquí están, para qué son buenos y para qué no son tan buenos:</p><p><strong>alojamiento compartido</strong></p><p>estás en un servidor con potencialmente cientos de otras personas. existen límites predefinidos, como la cantidad de espacio en disco/bases de datos que puede tener y la cantidad de datos que puede transferir por mes. este es el más barato de todos, a veces tan poco como $ 3/mes, pero tenga cuidado: tan pronto como su sitio comience a consumir más que los recursos mínimos, se le suspenderá y se le pedirá que actualice.</p><p>además, cosas como php/ssh/etc están configuradas en modo 'paranoico'. es posible que no tenga acceso a ciertas funciones y debe depender de su host para instalar las cosas que pueda necesitar (es decir, subversion/mercurial).</p><p>esto es bueno para las personas que desean alojar un sitio de tipo de tarjeta personal o de negocios. un brote de esto se llama <strong>alojamiento de revendedor</strong>, lo que le brinda la capacidad de crear cuentas de alojamiento adicionales para sus clientes.</p><p>tenga en cuenta que esto no es compatible con pci/dss/hipaa/etc.</p><p><strong>servidor virtual dedicado</strong></p><p>su sitio obtiene su propia vista única de un servidor compartido. puede configurar sus servicios y software como lo haría en un servidor dedicado, sin embargo, no hay garantías reales de recursos. "malos vecinos" es todo lo que se necesita para arrastrar su sitio.</p><p>por lo general, recomiendo esto a los desarrolladores que necesitan una caja de arena que les permita configurar las cosas de la manera que quieran.</p><p>nuevamente, no cumple con pci/dss/hipaa/etc</p><p><strong>servidor privado virtual</strong></p><p>esto es, para todos los efectos, un servidor dedicado que viene con una cierta cantidad de recursos garantizados. serás el súper usuario, puedes hacer lo que quieras. dependiendo de la plataforma, sus límites de recursos pueden 'explotar' en ocasiones para hacer frente a los picos de uso. desafortunadamente, esto también significa que sus recursos se ven afectados si varios vecinos también necesitan "explotar".</p><p>recomiendo ir con un proveedor de xen si sigue esta ruta, nunca tendrá menos de lo que paga.</p><p>recomiendo que todos los sitios nuevos que anticipan cualquier tipo de tráfico comiencen con nada menos que un vps.</p><p>esto puede ser, dependiendo del tipo de hipervisor y almacenamiento utilizado, compatible con pci/etc.</p><p><strong>servidor totalmente dedicado</strong></p><p>exactamente como se lee, un servidor que es tuyo y solo tuyo. puede alquilar uno mensualmente o comprar uno y pagar para que se ubique en un centro de datos. recomiendo ir con la opción de alquiler primero, requiere menos inversión para ampliar si es necesario. cuando los ingresos lo permiten, siempre puede comprar sus propios servidores. para ese momento, tendrá una comprensión muy firme del tipo de hardware que necesita.</p><p>recomiendo esto para las empresas de nueva creación que pueden permitirse unos pocos cientos de meses de alojamiento, o cualquiera que tenga que cumplir con los estándares de seguridad. si almacena información cc de cualquier tipo, o cualquier tipo de información médica/de salud, realmente querrá tener acceso exclusivo a su propio hardware.</p><p><strong>alojamiento en la nube</strong></p><p>he creado varias plataformas en la nube para algunas grandes empresas de alojamiento web. soy prolífico en el desarrollo de xen e incluso no puedo decirle en una oración clara y concisa qué se supone que significa 'nube' cuando se trata de iaas (infraestructura como servicio).</p><p>lo que está obteniendo con la mayoría de los proveedores de la nube es una o más máquinas virtuales a las que se les puede asignar más memoria o almacenamiento según lo exija el tráfico, luego vuelvan a la configuración 'inactiva' cuando el tráfico disminuya. además, algunos ofrecen la capacidad de hacer clones de una sola instancia y conectarlos mediante un equilibrador de carga (generalmente basado en software).</p><p>lo que hay que tener en cuenta aquí es mega facturas si su sitio se ve afectado. hay muchos casos en los que el algoritmo que 'escala automáticamente' funciona más a favor de la empresa de hosting y menos a favor de su billetera. si obtiene ese tipo de alojamiento, asegúrese de que el interruptor permanezca pegado al manual. en muchos casos, solo encender un caché es suficiente para satisfacer una mayor demanda de tráfico.</p><p>amazon y otros han publicado claramente que sus ofertas <strong>no</strong> cumplen con las pautas establecidas por estándares de seguridad como pci/dss o estándares federales como hipaa/hitech. esto no es tanto una advertencia de usar un hipervisor, es una advertencia de usar una red de almacenamiento compartida.</p><p><strong>en resumen:</strong></p><p>el tipo de alojamiento que obtienes es realmente incidental, lo que importa más es cómo planeas tu red. por ejemplo, puede tener static.domain.com utilizando un servidor http liviano que tiene la responsabilidad de servir solo imágenes y medios, reduciendo drásticamente la carga en su servidor de producción.</p><p>además, el almacenamiento en caché inteligente de páginas dinámicas (y/o) las consultas que intervienen para hacerlas le permiten exprimir considerablemente más de cualquier plataforma.</p><p>obtendría algunos servidores vps, o tal vez un servidor dedicado y un par de servidores vps. la otra cosa que no puedo hacer es dividir mi dns, si mi dominio no se puede resolver ... todo el almacenamiento en caché y el ajuste fino en el mundo no ayudarán.</p><p>es realmente difícil decir qué sería 'mejor' para usted, no estoy seguro de la complejidad y las necesidades de su proyecto. sin embargo, con suerte, lo anterior le brinda una idea de los pros y los contras, sea cual sea el camino que decida.</p> <p>ubuntu se encuentra bajo una combinación de licencias, cada paquete individual tiene su archivo de derecho de copia en/usr/share/doc/package/copyright, p./usr/share/doc/gnome-panel/copyright todos los paquetes en main y universe son software libre y pueden modificarse y redistribuirse; los paquetes restringidos y multiverse se incluyen en otras licencias que pueden no permitirlo.</p><p>ver <a href="http://www.ubuntu.com/project/about-ubuntu/licensing">http://www.ubuntu.com/project/about-ubuntu/licensing</a> para más detalles</p>