Servidor Web

Imagen de Kt
Kt
0 puntos

alguien puede comentarme como es que puedo montar mi servidor de paginas web en ubuntu por que no se si es que tengo que instalarme el apache tal como lo hice en su momento en windows o en su caso configurar algo pues no se si es que ya lo tengo instalado pero no lo tengo configurado o activada mas... lo en mi caso lo que necesito instalar es ....mysql, apache tomcat ant cocoon y apache lenya (todo esto ya lo tenia corriendo en windows)

un saludo.

Imagen de Kike1965
+1
0
-1

Bueno para instalar un servidor web en Ubuntu, es fácil, instala los siguientes paquetes:

$ sudo apt-get install apache2
$ sudo apt-get install php5
$ sudo apt-get install mysql-server

Una vez instalados estos paquetes, configuramos Apache, del siguiente modo:

$ cd /etc/apache2

una vez dentro del directorio, edita el archivo apache2.conf

$ sudo gedit apache2.conf y descomenta la línea

#AddDefaultCharset ISO-8859-1

debe quedar así

AddDefaultCharset ISO-8859-1

Luego guarda el archivo y sal del editor.

Posteriormente ingresa al directorio sites-available

$ cd sites-available y edita el archivo default

$ sudo gedit default

las primeras tres líneas del archivo deben de quedar del siguiente modo:

NameVirtualHost*:80
menor que VirtualHost*:80 mayor que (remplaza el mayor que y menor que por los caracteres)
ServerAdmin tucorreo@xxx.com

Posteriormente descomenta la siguiente línea

#RedirectMatch^/$ /apache2-default/

para quedar así

RedirectMatch^/$ /apache2-default/

Luego al final del archivo agregamos lo siguiente:

menor que VirtualHost*:80 mayor que (remplaza mayor que y menor que por los caracteres)
ServerName tudominio.com
DocumentRoot /var/www/html/tu_index.html
DirectoryIndex index.php index.html index.htm index.shtml
menor que /virtualhost mayor que (remplaza mayor que y menor que por los caracteres)

Ahora guardamos el archivo y salimos del editor. Con ello ya quedaría configurado Apache2.

Saludos.

(Mayor que = >)
(Menor que = <)

K|Ke
Linux Registered User # 417515

+1
0
-1

K|Ke Linux Registered User # 417515

Imagen de rafa84
+1
0
-1

Comencemos; se supone que ya tenemos instalado Linux y Apache en nuestro PC con la configuración basica. y se supone que te has leído el articulo de http://web.z84.es/publicaciones/receta_servidor_ubuntu/receta_servidor_u... en el cual se descrive como montar un servidor Http + Samba + FTP + Mysql. o bien ya tienes conocimientos basicos sobre el funcionamiento de Linux y Apache todas las descripciones de nombres de archivos hacen referencia la la distribución Ubuntu 6.06 y a W2000, por si se me olvida mencionarlo en algún momento, aunque debería ser mas de lo mismo en otras distibuciones, si encuentras alguna diferencia con XP o bien otra distribución de Linux házmelo llegar y si es interesante se incluirá en el articulo.

Vamos a ir paso a paso si Apache ya esta funcionando ¿que pretendemos? pues a parte de la ruta /var/www que es la ruta general del dominio, permitir a los usuarios del sistema tener su propia Web Site esto se consigue con UserDir.

Veamos la siguientes líneas del fichero apache2.conf

# UserDir is now a module
#UserDir public_html
#UserDir disabled root

“UserDir public_html” que quiere decir que si en el navegador tecleamos http://localhost/~usuariolinux Apache traducirá esta ruta por /home/usuariolinux/public_html con lo cual hemos de crear un directorio public_html dentro del directorio home del usuario. ¿como coño escribimos el símbolo “~”? pues tecleando Alt-Gr + la tecla 4 del teclado alfanumérico no pasará nada pero en el siguiente carácter tecleado ya aparecerá con el símbolo ~ por detrás, es un poco retorcido tener que emplear este carácter pero que le vamos a hacer, con lo cual descomentámos la línea quitando el simbolo # guardamos el documento y reiniciamos apache usando una consola o terminal.

Vale ya tenemos el Apache instalado incluso tenemos activada la opción de directorios personales por ejemplo usuario1 http://miubuntu/~usuario1 hasta hay todo correcto y funciona, puedo acceder desde la red o internamente con el nombre de dominio y la IP.
Ahora veamos cual es el objetivo; pues que en vez de teclear http://miubuntu/~usuario1 tecleemos algo como http://micasa.com y al teclear esta definición nos muestre el contenido de http://miubuntu/~usuario1 que es igual a home/usuario1 con lo cual será equivalente a tener un internet en modo local aunque también nos puede servir para enlazar al servidor de nuestra casa en la red de redes. Pero eso ya es parte de otro articulo.

Cuales son los pasos ha realizar para consergir esta resolución de nombres virtuales que como curiosidad os menciono que podemos emplear el formato que queramos www.micasa.com, micasa.es, micasaasecas, micasa.casa, vamos lo que se nos antoje ya que nosotros resolveremos la DNS (nombre de dominio).

1º Paso crear los directorios y usuarios de los nombres virtuales
2º Paso decirle a Linux cuales son los nombres de máquina a los cuales tiene que dar servicio en la configuración.
3º Paso crear un fichero con los dominios virtuales y cargarlo en Apache.
4º Resolver los nombres virtuales para que apunten a nuestro PC hay 2 sistemas uno facil y uno mas complejo.

1º Paso crear los directorios y usuarios de los nombres virtuales
Lo logico es crear usuarios en Linux con el mismo nombre que los dominios virtuales por ejem vamos a crear un dominio virtual micasa.com lo suyo sería crear un usuario que se llamasé " micasa " en la carpeta del usuario micasa crearemos el directorio Public_html y meteremos una pagina html con el nombre index.html.
Con lo cual en Ubuntu vamos a Sistema> administrar usuarios y grupos y creamos el usuario micasa al crear este usuario podemos aplicarle diferentes Shell por ejem. bin false con lo cual no podrá iniciar sesión en el servidor pero mejor no nos complicamos y creamos un usuario normal y en modo root le creamos una carpeta llamada Public_html a la cual le asignamos propiedades de lectura y ejecución y escritura a todos los usuarios y grupos.

2º Paso decirle a linux cuales son los nombres de máquina a los cuales tiene que dar servicio en la configuración.
Ir a Sistema > Administración > Red y el la pestaña Equipos que define que direcciones escucha el servidor en mi IP estatica añadí los nombres de usuario1 y usuario2 con lo cual quedo 192.168.100.1 miubuntu, usuario1, usuario2 miubuntu era ya anteriormente el nombre de mi servidor ( si no realizamos esta asignación me daba error al ejecutar el a2ensite de nombre no resuelto) También introduzco los nombres de usuario 1 y 2 en la IP 127.0.0.1.
Esto que hemos echo en modo grafico equivale a abrir el fichero host que se encuentra en el directorio etc y teclear a mano lo que he remarcado en azul.
127.0.0.1 miubuntu usuario1 usuario2
192.168.100.10 miubuntu usuario1 usuario2

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Mas abajo volvemos ha hablar de este fichero.

3º Paso crear un fichero con los dominios virtuales y cargarlo en Apache.

Siguiente paso intento configurar lo VirtualHost cojo el fichero default de sites-available y creo 1 copia y la bautizo como missitios paso a mostrar el contenido original sin manipular del fichero default. Ojo en otras distribuciones de Linux puedes no tener este fichero con lo cual mas adelante se explica como realizarlo sin este fichero.
NameVirtualHost *
VirtualHost *>
ServerAdmin webmaster@localhost

DocumentRoot /var/www
Directory />
Options FollowSymLinks
AllowOverride None
/Directory>
Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Uncomment this directive is you want to see apache2's
# default start page (in /apache2-default) when you go to /
#RedirectMatch ^/$ /apache2-default/
/Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
/Directory>

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined
ServerSignature On

Alias /doc/ "/usr/share/doc/"
Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
/Directory>

/VirtualHost>

NOTAS VARIAS:

El NameVirtualHost tiene que coincidir su definición o comodines con el 1º virtual host y el 1º virtualhostt tiene que volver a definir el nombre del dominio principal máquina que le asignamos a nuestra máquina con el parametro ServerName

Lo de incluir los nombres maquina en la pestaña de redes o sea añadir en el fichero host los nombres de dominio virtuales es absolutamente necesario tanto en la ip en mi caso 192.168.100.10 como en localhost 127.0.0.1 ya lo tenemos que haber realizado antes de este paso.

Paso a mostrar el contenido de mi fichero de configuración missitios lo que he marcado en azul es lo que teneís que personalizar o sea el nombre de la máquina a la cual apache ya respondia hay que volverlo ha definir luego los dominios virtuales tantos como queramos, y la ruta de los mismos. Observar que solo se define una vez NameVirtualhost y que me he cargado / borrado lo de ScripAlias, ErrorLog, CustomLog y Alias tampoco conozco bien su funcionamiento y vi en ortos articulos de internet que no era necesario, luego observar que defino el VirtualHost del dominio principal lo cierro con y vuelvo a comenzar a partir de para definir un segundo dominio en este caso ya virtual ojo ya no repetir NameVirtualHost .
NameVirtualHost *:80
VirtualHost *:80>
ServerName miubuntu
DocumentRoot /var/www/
Directory />
Options FollowSymLinks
AllowOverride None
/Directory>
Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Uncomment this directive is you want to see apache2's
# default start page (in /apache2-default) when you go to /
#RedirectMatch ^/$ /apache2-default/
/Directory>
/VirtualHost>

VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName usuario1
DocumentRoot /home/z84/public_html/
Directory />
Options FollowSymLinks
AllowOverride None
/Directory>
Directory /home/z84/public_html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Uncomment this directive is you want to see apache2's
# default start page (in /apache2-default) when you go to /
#RedirectMatch ^/$ /apache2-default/
/Directory>
/VirtualHost>

VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName usuario2
DocumentRoot /home/google/public_html/

Options FollowSymLinks
AllowOverride None
/Directory>
Directory /home/google/public_html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Uncomment this directive is you want to see apache2's
# default start page (in /apache2-default) when you go to /
#RedirectMatch ^/$ /apache2-default/
/Directory>
/VirtualHost>

Bien ya tenemos el fichero editado veamos que tenemos que hacer con el. los pasos que descrivo son los que ejecute en Ubuntu 6.06 si pensais que en vuestra distribución puede ser diferente buscar en internet una receta parecida a esta y sacar vuestras conclusiones también creo que todo este texto se puede agregar al final del fichero de configuración principal de apache por ejemplo http.conf o apache2.conf con lo cual una vez añadido ejecutar ./apache2 restart y listo. en Ubuntu los VirtualHos los han puesto aparte y se cargan con la una orden include puesta en el fichero principal apache2.conf, pero me suena que en OpenSuse los name VirtualHost se definen en el fichero principal.

Si tu caso es que has editado los VirtualHost directamente en el fichero principal solo tienes que ejecutar un restart de Apache y listo si tu esta trabajando con Ubuntu o alguna distribución tipo Debian tendras que usar una utilidad de Debian que lo unico que hace es verificar que estamos configurando correctamente los VirtualHost no es un instalador propiamente:

Abrimos una consola en modo Root nos situamos en el directorio /etc/apache2/sites-available y tecleamos a2ensite misdominios con lo cual verificará el contenido del fichero en busca de errores que mas que nada compara los nombre de los HostVirtuales con el fichero /etc/host/ y en caso de de falte algo dará un error. También verifica que existan las rutas de DocumentRoot.

En caso de dudas de lo que hemos echo con a2dissite mostrará los sitios todos añadidos ya que tambien podiamos haber realizado un fichero para cada sitio virtual pero yo he juanto en uno solo. Pues bien con a2dissite muestra todos los ficheros de sitios virtuales enlazados por apache en y se queda esperando que introduzcas el nombre de uno para eliminar el sitio virtual en caso de no querer borrar el sitio virtual pulsar Ctrl+ C.

Bien por lo tanto Debian Ubuntu tiene esas 2 instrucciones para añadir y eliminar facilmente dominios virtuales sin necesidad de editar los ficheros principales realmente estas 2 instrucciones a parte de ofrecer una revisión del fichero que en principio no es necesaria simplemente crean un enlace /acceso en sites-enabled al fichero situado en sites-available que se carga desde el fichero principal de apache2.conf lo cual nos permite tener multiple ficheros de configuración virtuales obsoletos pero solo se cargarán los que estén enlazados desde sites-enabled.

Que quede claro que si tu distribución no es Debian, tampoco necesitas estas instrucciones ni enlaces simplemente lo insertas las definiciones directamente en le fichero principal de todos modos estudia tu fichero principal que seguro que hay un ejemplo de dominio virtual descomentado con el simbolo #.

Ya podemos probar la ha navegar por nuestros dominios virtuales abrimos el navegador y listo debería funcionar pero y desde los navegadores de los ordenadores de la red funcionará pues NO. veamos por que en el siguiente punto........

4º Resolver el los nombres en los ordenadores para que apunten a nuestro PC hay 2 sistemas uno facil y uno mas comlejo.

Leyendo la documentación de Apache y Ubuntu nos informa que aparte de definir los Host Virtuales tenemos que tener un sistema que resuelva los nombres en los ordenadores de la red para que la petición se encamine a nuestro PC donde se encuentra nuestro Apache. Hay 2 sistemas el dificil es instalar un servidor DNS llamado Bind para que los equipos externos resuelvan el nombre y se les encamine a la IP 192.168.100.10 que es la IP de mis servidor, ojo a parte de instalar Bin si este no es el encaminador principal de internet, el cual da servicio a todos los PCs de la red, habrá que configurar cada PC cliente para que consulte nuestro servidor Bind en cada petición.

Pero como mi red es de 2 PCs he descubierto también una manera sencilla de parchear el problema de la resolución de las DNS.¡Decirle al ordenador W2000 donde se encuentran los dominios virtuales!. Para ello he visto que si edito un fichero llamado hosts C:\WINNT\system32\drivers\etc\hosts con el editor de texto y añado :

# Copyright (c) 1993-1999 Microsoft Corp.
#
# Éste es un ejemplo de archivo HOSTS usado por Microsoft TCP/IP para Windows.
#
# Se encuentra en C:\WINNT\system32\drivers\etc\hosts
#
# Este archivo contiene las asignaciones de las direcciones IP a los nombres de
# host. Cada entrada debe permanecer en una línea individual. La dirección IP
# debe ponerse en la primera columna, seguida del nombre de host correspondiente.
# La dirección IP y el nombre de host deben separarse con al menos un espacio.
#
#
# También pueden insertarse comentarios (como éste) en líneas individuales
# o a continuación del nombre de equipo indicándolos con el símbolo "#"
#
# Por ejemplo:
#
# 102.54.94.97 rhino.acme.com # servidor origen
# 38.25.63.10 x.acme.com # host cliente x

127.0.0.1 localhost

HASTA AQUI EL FICHERO ORIGINAL....
Y AL FINAL DEL FICHERO INSERTO:

192.168.100.10 usuario1
192.168.100.10 usuario2

guardo y cierro ahora escribo en el navegador del ordenador remoto http://usuario1 y listo me resuelve el nombre y lo encamina al servidor 192.168.100.10 que es donde esta mi apache. Bueno quedaría mejor con un servidor DNS en mi servidor pero de momento ya tengo resuelto el problema.

**************NOTA HE TENIDO QUE QUITAR EL SIMBOLO < YA QUE LO TOMA COMO ETIQUETA DONDE SE VEA UN CIERRE /> HAY QUE AÑADIR DELEANTE UN <

+1
0
-1

Compartiendo recursos

Imagen de tucuta
+1
0
-1

Excelente la manera de explicar esto.

Les cuento:

Yo ya tengo absolutamente todo eso, puedo ver mi sitio desde mi dirección de ip que es fija.

Pero ahora lo que necesito es darle el nombre del dns a mi dominio, por ejemplo (ns1.midominio.com ns2.midominio.com)

Como puedo hacer esto o si saben de algun manual práctico te lo agradecería

+1
0
-1
Imagen de NJS
+1
0
-1

necesitas instalar y configurar un servidor DNS en tu server. o simplemente redireccionar tu dominio a tu IP!

+1
0
-1

---------------------------------------------------

Imagen de tucuta
+1
0
-1

Hola NJS, muchas gracias por tu respuesta.

Pero como lo hago...?

Te cuento un poco más en detalle.

Ya tengo instalado el bind9 pero no se como configurarlo correctamente, mi ip es estática y tengo dos DNS que me dió mi ISP pero lo que no se hacer es la configuración correcta para poder redireccionar mi dominio a mi propio hosting.

Tampoco se que poner en mi cpanel cuando me dice que ponga mi DNS1 y DNS2.

Desde ya gracias por la ayuda que me puedas brindar.

Ahhh se me olvidaba, ya lo de virtual host ya lo tengo, pero lo que quiero es que en ves de tener que poner mi ip para acceder a mi host ponga mi dominio y pueda acceder a mi host.

Gracias

+1
0
-1