CÓMO INSTALAR UN SERVIDOR WEB Y UN SITIO WEB EN WINDOWS CON
APACHE, MYSQL, PHP Y PHP-NUKE
Este artículo muestra paso a paso
cómo hacer que un equipo con Windows XP (válido para cualquier versión de
Windows: 98, ME, XP, 2000, 2003) sea un servidor web con Apache, PHP y MySQL.
Y, además os explicamos cómo crear y administrar un Sitio Web con el gestor de
contenidos (gratuito) PHP-Nuke (basado en PHP y MySQL):
1. En
primer lugar descargaremos los ficheros necesarios para la instalación de
Apache, para ello podemos acceder AppServ Open Project:
Para descargar
un paquete completo que en su versión AppServ 2.4.4a Packages
(Totalmente
gratuito) incluye:
Ø
Apache 1.3.33
Ø
PHP 4.3.11
Ø
MySQL 4.0.24
Ø
phpMyAdmin-2.5.7-pl1
Ø
MyODBC-3.51.11-2
2. Una
vez descargado el fichero, lo ejecutamos y seguimos las instrucciones del
programa de instalación, nos aparecerá una ventana de Bienvenida, pulsaremos
"Next":
Ahora
especificaremos la ubicación de los ficheros de instalación (no es recomendable
instalarlo en la ubicación por defecto pues será el primer sitio donde busque
un hacker que haya accedido a nuestra red):
Seleccionaremos
el tipo de instalación (recomendado "Custom" para usuarios avanzados
o para especificar los paquetes a instalar):
Marcaremos los
componentes que queramos instalar (Apache = Servidor Web, MySQL = Base de
Datos, PHP = Lenguaje de programación para la web, incluye acceso a Bases de
Datos, phpMyAdmin = Administrador web de base de datos MySQL (utiliza PHP)).
Recomendamos instalar todos los paquetes, salvo que ya tenga alguno instalado o
desee instalarlo por separado:
A continuación
especificaremos el nombre del servidor (Server Name), si tenemos registrado un
dominio redirecconando a la IP donde estemos instalando el Servidor Web
podremos especificarlo aquí, por ejemplo www.ajpdsoft.com, en caso contrario
pondremos "localhost" o la IP del servidor Web, también
especificaremos el email del administrador y el puerto que se utilizará (por
defecto y, normalmente, es el 80):
3.
Si disponemos de un Router en nuestra red local
(LAN) y queremos permitir el acceso externo a nuestro Servidor Web tendremos
que abrir y redireccionar (mapear) el puerto especificado anteriormente en el
Router (o cortafuegos). A continuación os mostramos cómo mapear un puerto a una
IP local (en este caso suponemos que la IP de nuestro Servidor Web es
192.168.1.1 y el puerto a mapear será el 80) en varios modelos y marcas de
router (obviamente dependiendo del modelo de Router el NAT estará en diferentes
menús):
Ø Router
SMC Barracude g: en este router el mapeo de puertos se encuetra en
"NAT" - "Virtual Server", especificaremos la IP del
Servidor Web en "Private IP" y el puerto a redireccionar en
"Service Port":
Ø
ZyXEL:
accederemos a "Advanced setup" - "NAT" - "SUA
Only" - "Edit Details":
Ø
Otro
modelo de ZyXEL: desde "Configuration" - "Security" -
"Advanced NAT Configuration" - "Add reserved mapping":
(Como se puede observar en casi
todos suele ser una opción llamada NAT (Network Address Translation))
4.
Volviendo a la instalación de AppServ, tras
seleccionar el puerto y mapearlo, pulsaremos en "Next" y
especificaremos los datos para configurar MySQL ("User Name": nombre
de usuario para acceso a la Base de Datos, "Password": contraseña
para este usuario, "Charset": juego de caracteres, para idioma
español normalmente "latin1"). A continuación pulsaremos
"Next":
Por defecto
MySQL crea dos usuarios, uno llamado "mysql" (sin contraseña) que
sólo tiene acceso de lectura y otro llamado "root" (sin contraseña)
que tiene permisos para administración. Con lo cual es recomendable acceder a
MySQL (mediante phpMyAdmin o cualquier otro cliente) y modificar crear una
contraseña para el usuario "root".
El programa de
instalación empezará a copiar los ficheros necesarios al disco duro:
En la ventana
que aparece a continuación podremos configurar el tipo de inicio de los
servicios necesarios para que el Servidor Web (Apache) y el Servidor de Bases
de Datos (MySQL), si marcamos la opción "Start Apache" se iniciará el
servicio de Apache y si marcamos "Start MySQL" se inicará el servicio
de MySQL. Pulsaremos en "Close" para finalizar la instalación:
Si no hay
problemas nos aparecerá una ventana de MS-DOS indicando que el servicio de
Apache está iniciado. Para comprobar que se ha instalado correctamente, abrimos
el navegador de Internet y ponemos en dirección "http://localhost",
nos debería aparecer una ventana como esta:
Desde esta
ventana podremos ver, por ejemplo datos sobre PHP (versión...) pulsando en
"PHP Information Versión 5.0.4" o también podremos administrar MySQL
pulsando "phpMyAdmin Database Manager Versión 2.6.2" o bien poniendo
en el navegador
"http://localhost/phpMyAdmin":
El fichero de
configuración para phpMyAdmin se encuentra en:
UNIDAD_Y_CARPETA_DE_INSTALACION
wwwphpMyAdmin" y se llama "config.inc.php". Desde aquí podremos
establecer, por ejemplo, el usuario y la contraseña con el que nos conectaremos
a MySQL y otros muchos parámetros. Por ejemplo: si ya teníamos instalado MySQL
con nuestro usuario y contraseña, para añadirlos al fichero de configurar y
tener acceso desde phpMyAdmin tendremos que modificar los siguientes parámetros
(en negrita los datos a modificar):
5.
Si ya hemos instalado Apache y hemos mapeado el
correspondiente puerto (80) y, en caso de tener cortafuegos, hemos permitido el
tráfico para dicho puerto, podremos probar nuestro Servidor Web realizando una
conexión externa, para ello hemos de averiguar la IP pública que tenemos (la
que le asigna su proveedor de Internet que no tiene por qué coincidir con la IP
local del PC, es recomendable que esta IP sea fija para un Servidor Web, si no
la sabemos podemos obtenerla pulsando aquí. Tras obtenerla nos conectaremos a
otro PC de fuera de nuestra red bien con control remoto o bien saliendo
físicamente de nuestra ubicación y, en un PC con conexión a Internet, pondremos
en el navegador web la siguiente dirección
"http://IP_PUBLICA_OBTENIDA", nos debería aparecer (si no hay
problemas con el cortafuegos y el puerto está correctamente mapeado) la misma
ventana que si lo hiciésemos en local.
Ø En
la captura de pantalla que a continuación os mostramos podréis observar que
también se puede administrar MySQL remotamente mediante phpMyAdmin a través del
navegador de Internet (sin necesidad de instalar en el PC con el que nos
conectamos ningún tipo de software):
(En nuestro caso hemos utilizado
Radmin Viewer para acceder remotamente a otro PC externo a nuestra red y probar
la conexión a nuestro recién configurado Servidor Web).
De esta forma, cada vez que
intentemos conectarnos con phpMyAdmin a MySQL nos aparecerá una ventana de
petición de usuario y contraseña:
Para configurar Apache (Servidor
Web) abriremos el fichero "httpd.conf" que se encuentra en
"UNIDAD_Y_CARPETA_DE_INSTALACION/apache/conf". Los parámetros más
importantes de este fichero son:
NOTA IMPORTANTE: cada vez que
cambiemos algún parámetro en el fichero "httpd.conf" y queramos que
se apliquen los cambios tendremos que detener el servico de Apache y volver a
iniciarlo. Para detenerlo es suficiente con cerrar la ventana MS-DOS que se
abre cuando se inicia. Para inciarlo podemos hacerlo accediendo a
"...apache" y ejecutando el fichero "apache_start.bat". Una
vez reiniciado el servicio Apache los cambios se habrán aplicado.
6.
Si queremos instalar permanentemente el servicio
que inicia Apache (para que cuando se reinicie el Servidor se inicie el
servicio de Apache automáticamente) podemos hacerlo ejecutando el fichero:
"apache_serviceinstall.bat" ubicado en "...apache". Para
desinstalarlo ejecutaremos "apache_serviceuninstall.bat".
7.
En nuestro caso, puesto que hemos utilizado
Windows XP SP2 y teníamos habilitado los cortafuegos que éste incluye hemos
tenido que abrir el puerto 80 en el mismo para que funcionara correctamente
nuestro Servidor Web. Para abrirlo accedemos a "Inicio" -
"Configuración" - "Panel de Control" - "Firewall de
Windows" - "Pestaña excepciones" - "Agregar puerto",
en "Nombre de puerto" ponemos http y en "Número de puerto"
ponemos 80 (o el que hayamos elegido en la instalación), guardamos todo y lo
probamos. Con cualquier otro cortafuego también es necesario abrir el puerto
utilizado.
8.
Por último, puesto que estamos interesados en
tener un sitio web en nuestro propio Servidor Web, utilizando PHP-Nuke (que se
puede descargar gratuitamente de http://www.download-phpnuke.com/) que es un
gestor de contenidos web basado en PHP y MySQL (lo que hemos instalado
anteriormente junto con Apache) podremos crear nuestro propio Sitio Web
gratuitamente. Una vez descargado el fichero de PHP-Nuke lo descomprimimos y
copiamos a la ruta que hemos configurado en el parámetro
"DocumentRoot", en nuestro caso hemos copiado los ficheros de la
carpeta de instalación "...html" de PHP-Nuke a la carpeta
"E:AppServwwwPHP-Nuke". Puesto que PHP-Nuke es un gestor de
contenidos que se basa en MySQL necesita que creemos en MySQL un nuevo esquema
(base de datos) y unas tablas. Para ello la instalación de PHP-Nuke (versión 7)
incluye un fichero llamado "...sql uke.sql" que lleva todas las
sentencias SQL necesarias para crear las tablas. Para ejecutar este fichero
podemos hacerlo desde phpMyAdmin. Abrimos el fichero, copiamos todo su
contenido, iniciamos la sesión en phpMyAdmin (como administradores, usuario
root o alguno que tenga los mismos privilegios), creamos una nueva base de
datos (en nuestro caso la llamamos "php-nuke"):
phpMyAdmin abrirá
la base de datos creada, a continuación pulsamos en "SQL":
Pegamos
el contenido del fichero nuke.sql en el cuadro de texto: "Ejecute la/s
consulta/s SQL en la base de datos php-nuke:" y pulsamos en
"Continúe" (también podemos especificar la ubicación del fichero
nuke.sql directamente en "Localización del archivo de texto:"):
Tras
ejecutarse las sentencias SQL habrá creado las tablas (92) y registros
necesarios para que PHP-Nuke funcione correctamenete:
Por
último, para configurar el usuario, la contraseña y el nombre de la Base de
Datos abriremos el fichero de PHP-Nuke llamado "config.php" y
cambiaremos los siguientes parámetros:
Ø "$dbhost":
ubicación del Servidor Web, por defecto "localhost".
Ø "$dbuname":
nombre del usuario que deberá tener acceso a las tablas de PHP-Nuke.
Ø "$dbpass":
contraseña del usuario que deberá tener acceso a las tablas de PHP-Nuke.
Ø "$dbname":
nombre que hemos dado a la base de datos de PHP-Nuke al crearla, en nuestro
caso "php-nuke".
Por
fin podremos comprobar el resultado de la instalación de Apache, PHP, MySQL y
PHP-Nuke, para ello escribimos en el navegador de Internet
"http://localhost" y nos aparecerá la ventana de configuración de
PHP-Nuke:
Puesto
que aún no hemos creado un usuario administrador para configurar y añadir los
contenidos con PHP-Nuke a nuestro sitio web, pulsaremos en
"Administration" o bien pondremos en el navegador de Internet
"http://localhost/admin.php", rellenamos los datos y pulsamos en
"Enviar":
A
continuación nos aparecerá una ventana para iniciar la sesión como usuario
administrador, rellenamos los datos (con los introducidos anteriormente) y
pulsamos en "Login":
Con
la ventana de administración podremos configurar cualquier aspecto de nuestra
web así como añadir cualquier tipo de contenido, esto, obviamente lo dejamos a
vuestra leal saber y entender:
ATRAS
ATRAS
|
No hay comentarios:
Publicar un comentario