servidor web
TRANSCRIPT
Apache, PHP, MySQL, Phpmyadmin, SMTP.
06/06/[email protected]
Servidor Web
06/06/[email protected]
Dedicado para aquellas personas que tienen
intención de crear su propio servidor casero bajo
Windows.
En el futuro, realizaré este mismo manual bajo
sistema operativo Linux.
Que lo pasen bien.
Índice
06/06/[email protected]
Presentación – 4
Ver. Servidores – 11
Apache 2.0 – 13
PHP 5 – 29
Config. archivo INI – 38
Apache 2.0.x – 48
Probando Apache – 60
MySQL 5.1 – 71
phpMyAdmin – 100
Usuarios MySQL – 114
Servidor SMTP – 145
Actualizaciones – 165
VirtualHosts – 174
Cara Internet – 193
Otros manuales – 203
Enlace de interés – 205
Versión manual – 208
Contacto – 209
Autor – 210
Presentación
06/06/[email protected]
Servidor Web
06/06/[email protected]
Este es un manual sencillo para crear un servidor
Web casero para poder hacer pruebas con script
para PHP, base de datos como MySQL, instalar tu
propio foro muy popular phpBB e incluso una Web
prefabricada muy famosa y conocida como Joomla,
entre otras cosas.
Está orientado a personas nóveles y se explicará
paso a paso, detalladamente y amena posible para
su comprensión.
Servidor Web
06/06/[email protected]
Se anima al lector introducirse al manual del
servidor Web de manera muy sencilla y amena.
Notarás que está diseñado también como referencia
rápida.
Los programas que vamos a usar son
completamente gratuitos, sin desembolsar ninguna
cantidad de dinero por ello.
Utilizaremos herramientas equivalentes sobre
manejo de base de datos.
Servidor Web
06/06/[email protected]
Montarás un servidor SMTP envío de correo
electrónico y un servidor y cliente FTP para
transmitir archivos.
Como actualizar futuras actualizaciones de nuestro
servidor.
Sobre todo, trataremos temas de mínima seguridad
y consejos.
Espero que te lo pases bien a lo largo de este
manual.
Servidor Web
06/06/[email protected]
Se trabajará en el entorno Windows XP SP3 desde
que se creó este manual.
Servidor Web
06/06/[email protected]
NOTA:
Este manual sólo nos centraremos en un servidor
casero para hacer pruebas.
No vamos hacer ajustes fino de seguridad a cara al
público.
Cualquier configuración que haga, mal
funcionamiento e incluso pérdidas de datos corre
bajo tu responsabilidad.
Si tienes dudas sobre este manual, olvídese de él.
Estás avisado.
06/06/[email protected]
Versiones de Servidores
06/06/[email protected]
En este manual vamos a explicar la instalación y
configuración de Apache por separado.
Elegirás que versión deseas usar.
Si quieres configurar la versión Apache 2.0 vete a la
página.
Si quieres configurar la versión Apache 2.2 vete a la
página.
NOTA: Si vas a usar Apache 2.2 en versión
Windows, tienes que usar el PHP 5.2.x o superior.
Apache 2.0
06/06/[email protected]
Apache 2.0
06/06/[email protected]
Vamos a utilizar el Apache 2.0.63 que es la última
versión desde que se hizo este manual.
Este servidor Web es el más usado, más estable y
más popular hasta la fecha.
La ventaja de este servidor web es que es muy
extendido, tanto en Windows como en Linux.
Dejar claro que el Apache en Linux es mucho mejor,
más seguro y tiene funciones importantes que
Windows es incapaz de poseer.
Apache 2.0
06/06/[email protected]
Entramos en la Web oficial del Apache 2.0 para
descargarlo.
www.apache.org
Dentro de la Web nos iremos en el menú “HTTP
Server”, dentro de ella localizamos la versión que
queremos para este caso y pulsamos Download.
Dentro de ella, nos bajaremos con instalador que
exactamente se llama “apache_2.0.63-win32-x86-
no_ssl.msi”.
Apache 2.0
06/06/[email protected]
Apache 2.0
06/06/[email protected]
También puedes acceder a él en este enlace:
http://httpd.apache.org/download.cgi
Una vez que ya tengamos el archivo descargado lo
ejecutamos.
A partir de aquí, siga los pasos de las imágenes.
Apache 2.0
06/06/[email protected]
Apache 2.0
06/06/[email protected]
Apache 2.0
06/06/[email protected]
Apache 2.0
06/06/[email protected]
Deja estos valores de la
imagen.
Network Domain:
127.0.0.1
Server Name: 127.0.0.1
Administrator's Email
Address: nuestro e-mail,
no es necesario ponerlo.
For All Users, on Port
80, as a Service:
selecciona esta opción.
Apache 2.0
06/06/[email protected]
Apache 2.0
06/06/[email protected]
Apache 2.0
06/06/[email protected]
Aquí puedes
seleccionar la ubicación
de la instalación del
Apache 2.0.
Por defecto en este
caso lo dejamos como
está que es:
“C:\Archivos de
programa\Apache
Group\”.
Apache 2.0
06/06/[email protected]
Apache 2.0
06/06/[email protected]
Apache 2.0
06/06/[email protected]
06/06/[email protected]
PHP 5
06/06/[email protected]
PHP
06/06/[email protected]
Nos toca el turno a PHP, en este caso vamos a usar
la versión PHP 5.2.9-2 que es la última desde que
se hizo este manual.
Su Web oficial es www.php.net.
Pulsamos donwload.
PHP
06/06/[email protected]
PHP
06/06/[email protected]
Una vez descargado el archivo zip, creamos en la unidad C:\ una carpeta llamada en este caso, Servidor. Dentro de ella crearemos otra carpeta llamada PHP.
Si ya descomprimimos el archivo zip de php, metemos todos los archivos en la carpeta PHP del directorio “C:\Servidor\PHP”.
PHP
06/06/[email protected]
PHP
06/06/[email protected]
Cogemos todos los
archivos dll en el
directorio principal y lo
colocamos en el
directorio
“C:\Windows\System32”
.
También vale para el
Windows Server
2003/2008/Vista/7.
PHP
06/06/[email protected]
06/06/[email protected]
PHP – Configuración del archivo INI.
06/06/[email protected]
NOTA: Si no ves las extensiones de los archivos…
Vete a mi “Mi PC Herramientas Opciones de Carpeta Ver”.
Comprueba la parte“Ocultar las extensiones de archivo para tipo de archivo conocidos” que esté desmarcada.
PHP – Configuración del archivo INI.
06/06/[email protected]
Encuentra el archivo “C:\Servidor\PHP\php.ini-dist”.
Una vez encontrado, renómbralo “php.ini-dist” a “php.ini”.
Abre el archivo php.ini, pulsa “Control + B” y escribe extenssion_dir.
Una vez encontrado, escribe el directorio que muestra en la imagen.
PHP – Configuración del archivo INI.
06/06/[email protected]
Podemos activar las extensiones que queramos.
Buscamos “Windows Extensions” para activar las extensiones. Entre ellas busca gd2.dll para manejarlas funciones PHP relativas a imágenes.
Cambia ;extension=php_gd2.dll por extension=php_gd2.dll, es decir, quita el punto y como (;) para activar esta extensión.
PHP – Configuración del archivo INI.
06/06/[email protected]
Activa las extensiones php_mbstring.dll y php_mcrypt.dll.
Si quieres saber que es cada extensión, lo busca en su manual http://www.php.net/manual/es/
No actives todas las extensiones, pueden ser innecesarias si realmente no lo vas a usar.
Ahora, toca activar la última extensión php_mysql.dll ya que nos hace falta para el MySQL. Lo activas quitando el (;) delante.
PHP – Configuración del archivo INI.
06/06/[email protected]
Si queremos hacer
pruebas con upload,
indicamos la ruta pero
antes creamos la
carpeta upload en el
directorio
C:/Servidor/PHP/uploa
ds/
Claro que antes,
debemos encontrar en
php.ini
upload_tmp_dir.
PHP – Configuración del archivo INI.
06/06/[email protected]
Podemos cambiar el
tamaño de los archivos
a subir por vía HTTP.
Buscamos
upload_max_filesize y
cambiamos por el valor
que trae por defecto
que es 2MB por otro.
No se recomienda
poner un valor alto.
PHP – Configuración del archivo INI.
06/06/[email protected]
Para trabajar con
sesiones, vamos a
indicar un directorio
para que guarde los
archivos temporales.
Buscamos
session.save_path y
indicamos el directorio,
pero antes crear la
carpeta tmp en el
directorio
“C:/Servidor/PHP/tmp/”.
PHP – Configuración del archivo INI.
06/06/[email protected]
Copiamos el archivo php.ini y lo pegamos al
directorio o carpeta C\:Windows.
Si usas el Windows 2000, el directorio o carpeta
sería C\:WinNT.
Nos vamos a Apache para hacerle ver que ya PHP
está preparado y lo podemos usar.
06/06/[email protected]
Apache 2.0.x – Configuración del archivo
httpd.conf
06/06/[email protected]
Vamos a buscar el archivo de configuración de
Apache 2.0.x llamado httpd.conf.
Vete a “InicioApache HTTP Server
2.0Configure Apache ServerEdit the Apache
httpd.conf Configuration File” y abres el archivo
httpd.conf bajo el bloc de notas.
Apache 2.0.x – Configuración del archivo
httpd.conf
06/06/[email protected]
También puedes
acceder directamente al
directorio “C:\Archivos
de programa\Apache
Group\Apache2\conf”
como muestra la
imagen.
Apache 2.0.x – Configuración del archivo
httpd.conf
06/06/[email protected]
Una vez abierto el archivo httpd.conf, buscamos
Dynamic Shared Object (DSO) Support que es
donde se cargan los módulos.
Como vez, añadimos justo debajo LoadModule
php5_module C:/Servidor/PHP/php5apache2.dll.
Apache 2.0.x – Configuración del archivo
httpd.conf
06/06/[email protected]
El directorio o carpeta predeterminado se guarda en
C:\Archivos de programa\Apache
Group\Apache\htdocs\
Antes que nada, buscamos DocumentRoot.
Lo vamos a cambiar a “C:/Servidor/WEB/” como
muestra abajo, no olvides crear la carpeta web.
Apache 2.0.x – Configuración del archivo
httpd.conf
06/06/[email protected]
Dentro de la carpeta o directorio web, colocaremos
nuestra web principal, es el directorio raíz principal.
Buscamos DirectoryIndex y nos sale algo similar a
la imagen.
Apache 2.0.x – Configuración del archivo
httpd.conf
06/06/[email protected]
Modificamos la última línea para que al entrar en un
directorio tipo http://127.0.0.1/directorio/ nos
autoejecute el index predeterminado
(siempre que exista) y no salga un mensaje de error.
Puedes usar más nombres si lo prefieres. Se
ejecutarán por orden: si no encuentra el primero,
pasa al segundo, si no está el segundo, pasa al
tercero, y así sucesivamente hasta que si no
encuentra ninguno, entonces da error. En la
siguiente línea, si en nuestro directorio tenemos
un index.htm y un index.php, por defecto se
ejecutará el index.htm ya que está antes.
Apache 2.0.x – Configuración del archivo
httpd.conf
06/06/[email protected]
DirectoryIndex index.html index.htm index.php
index.php3 index.php4 index.phtml index.html.var
Ahora le añadimos debajo estas líneas (en la
primera de ellas, si estamos instalando
PHP5 también podemos añadir la extensión .php5
además de las que aparecen):
AddType application/x-httpd-php .php .php3 .php4
.phtml
AddType application/x-httpd-php-source .phps
Apache 2.0.x – Configuración del archivo
httpd.conf
06/06/[email protected]
La primera indica las extensiones que serán
interpretadas por el Apache. Por ejemplo podemos
añadir la extensión .htm o .html para que el Apache
ejecute el código PHP contenido en esas páginas
(es decir, el uso de código PHP no está limitado
exclusivamente a archivos *.PHP). La segunda sirve
para que si entras en una página loquesea.phps
entonces se muestra el código PHP a color, muy útil
si queremos por ejemplo mostrar el
código fuente a color en una página. De tal forma
que al final todo queda así que puedes ver en la
página siguiente:
Apache 2.0.x – Configuración del archivo
httpd.conf
06/06/[email protected]
Ya podemos guardar el archivo httpd.conf.
06/06/[email protected]
Probando el servidor Apache
06/06/[email protected]
Probando el servidor Apache
06/06/[email protected]
Para Apache 2.0.X accederemos desde los accesos
directos que se crean en el menú de inicio al acceso
directo Monitor Apache Servers y aparecerá un
icono al lado del reloj. Pinchando en el icono, sale
un menú desde donde podremos iniciar, apagar y
reiniciar el Apache. Como queremos encenderlo, si
no lo hace automáticamente le daremos a Start. Si
ya estaba encendido le daremos a Restart útil si
cambiamos alguna configuración de PHP "al vuelo")
para que al reiniciarlo nos coja los cambios que
hemos hecho.
Probando el servidor Apache
06/06/[email protected]
Probando el servidor Apache
06/06/[email protected]
Probando el servidor Apache
06/06/[email protected]
Ahora dentro de la
carpeta
C\:Servidor\Web
creamos un archivo de
texto con el bloc de
notas (TXT) y
cambiamos el nombre y
la extensión por
info.php.
Probando el servidor Apache
06/06/[email protected]
En el interior del info.php, introducimos este código:
Probando el servidor Apache
06/06/[email protected]
Ahora, cogemos cualquier navegador e introducimos
o bien http://127.0.0.1/info.php o bien
http://localhost/info.php
Probando el servidor Apache
06/06/[email protected]
Probando el servidor Apache
06/06/[email protected]
Si no se muestra la imagen justo de la página
anterior, revisa paso a paso otra vez lo que has
hecho hasta ahora.
Probando el servidor Apache
06/06/[email protected]
Ahora ya puedes acceder cualquier archivo del
Servidor.
Es como ir a moverse al directorio de Windows a
buscar un archivo dentro de su carpeta
correspondiente, por ejemplo:
http://localhost/CARPETA/ARCHIVO.EXT
http://127.0.0.1/CARPETA/ARCHIVO.EXT
Se incluye, cualquier archivo como jpg, zip, rar, gif,
txt, html, php, etc.
06/06/[email protected]
MySQL 5.1 - Instalación
06/06/[email protected]
Ahora vamos a instalar una base de datos como
MySQL de libre distribución para almacenar datos.
La versión utilizada es MySQL 5.1.34 desde que se
hizo este manual.
Su Web oficial es www.mysql.com
Puedes descargarlo directamente en este enlace
http://dev.mysql.com/downloads/mysql/5.1.html#win3
2
MySQL 5.1 - Instalación
06/06/[email protected]
Llegamos hasta aquí si has pinchado el último
enlace de la página anterior.
Vamos a descargar la versión con instalador.
Pincha en Pick a mirror.
MySQL 5.1 - Instalación
06/06/[email protected]
Como no nos vamos a
registrar o introducir el
usuario registrado,
pinchamos
directamente aquí » No
thanks, just take me to
the downloads!
MySQL 5.1 - Instalación
06/06/[email protected]
MySQL 5.1 - Instalación
06/06/[email protected]
Saldrá una ventana de descarga del archivo y
pulsamos el botón “Guardar archivo”.
MySQL 5.1 - Instalación
06/06/[email protected]
Ejecutamos el archivo o
MySQL descargado
mysql-5.1.34-
win32.msi.
MySQL 5.1 - Instalación
06/06/[email protected]
Aparecerá la ventana
de instalación.
Fíjese paso a paso las
próximas imágenes.
MySQL 5.1 - Instalación
06/06/[email protected]
Elegimos “Custom” ya que es la única opción en elegir la dirección a instalar.
MySQL 5.1 - Instalación
06/06/[email protected]
Puedes cambiar de dirección al instalar MySQL o le dejas como está.
MySQL 5.1 - Instalación
06/06/[email protected]
MySQL 5.1 - Instalación
06/06/[email protected]
MySQL 5.1 - Instalación
06/06/[email protected]
MySQL 5.1 - Instalación
06/06/[email protected]
MySQL 5.1 - Instalación
06/06/[email protected]
Dejamos la opción indicada y pulsamos el botón “Finish”.
MySQL 5.1 - Instalación
06/06/[email protected]
MySQL 5.1 - Instalación
06/06/[email protected]
Indicamos que será una máquina para desarrollo. Puedes indicar cualquier
opción si lo deseas.
MySQL 5.1 - Instalación
06/06/[email protected]
Elegimos que utilizamos bases de datos multifuncional. Estos nos permite
diferentes tipos de bases de datos.
MySQL 5.1 - Instalación
06/06/[email protected]
MySQL 5.1 - Instalación
06/06/[email protected]
MySQL 5.1 - Instalación
06/06/[email protected]
Si necesitamos acceso desde el exterior o Ineternet, dejamos las opciones
Tal como aparece en el dibujo.
MySQL 5.1 - Instalación
06/06/[email protected]
Indicamos que deseamos MySQL como un servicio más del windows.
Si deseamos que nos añada el directorio bin del MySQL en el Path del sistema,
marcamos la segunda opción.
MySQL 5.1 - Instalación
06/06/[email protected]
Nos pregunta si deseamos utilizar MySQL con el usuario "root" con contraseña,
o si deseamos crear un usuario anónimo. Lo dejamos en root sin contraseña,
más adelante la introducimos en otros medios.
MySQL 5.1 - Instalación
06/06/[email protected]
06/06/[email protected]
phpMyAdmin – instalación
06/06/[email protected]
phpMyAdmin es un gestor gratuito por vía Web muy
usado en el mundo. Podemos gestionar nuestra
base de datos muy fácilmente en cualquier punto
que nos encontremos por Internet.
Podemos crear base de datos, tablas, añadir datos,
borrar, crear nuevos usuarios y un largo etc como
ocurre con los gestores de escritorio.
Funciona bajo Apache, PHP y MySQL, sin ellos no
funcionaría por eso lo instalamos primero.
Vamos a la página oficial
http://www.phpmyadmin.net
phpMyAdmin – instalación
06/06/[email protected]
Vamos a usar la versión
phpMyAdmin 3.15 que
es la hay desde que se
hizo este manual.
Vamos a descargar el
archivo comprimido en
.zip como muestra en la
imagen con la flecha en
rojo.
phpMyAdmin – instalación
06/06/[email protected]
Descargamos el archivo llamado phpMyAdmin-3.1.5-all-languages.zip y lo descomprimimos.
Al descomprimir, vamos a entrar en la carpeta “lang” para quedarnos con el idioma español o el que deseamos.
Borramos todos los demás archivos para ahorrar peso y nos quedamos en este caso lo que muestra en la imagen.
phpMyAdmin – instalación
06/06/[email protected]
Vamos al directorio
C:\Servidor\Web y
creamos una carpeta o
directorio llamado
“phpmyadmin” en el
cual nos queda así,
C:\Servidor\Web\phpM
yAdmin.
Desde este directorio
introducimos todos los
archivos
phpMyAdmin – instalación
06/06/[email protected]
phpMyAdmin – instalación
06/06/[email protected]
Ahora vamos a configurar el phpMyAdmin.
Vamos al directorio
C:\Servidor\Web\phpmyadmin\libraries\config.def
ault.php.
Lo abrimos con cualquier editor de textos.
Buscamos de arriba a abajo:
$cfg['PmaAbsoluteUri'] = '';
Tenemos que dar la ruta absoluta que quedaría así:
$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/';
phpMyAdmin – instalación
06/06/[email protected]
Recuerda que poner localhost es lo mismo que
poner 127.0.0.1.
Ahora buscamos:
$cfg['blowfish_secret'] = '';
En ella pondremos cualquier carácter, que servirá
para la encriptación de contraseñas al usar la
autentificación con cookies. Por ejemplo:
$cfg['blowfish_secret'] = 'G%VWwethTVWE6hE%h66v674fdYbv95';
phpMyAdmin – instalación
06/06/[email protected]
Para entrar a phpMyAdmin por primera vez,
debemos configurar el tipo de autentificación para
que pida usuario y contraseña, que es el método
recomendado “existen varios”. Para ello, buscamos
$cfg['Servers'][$i]['auth_type'] y cambiamos su valor
a cookie, de forma que quede así:
$cfg['Servers'][$i]['auth_type'] = 'cookie';
phpMyAdmin – instalación
06/06/[email protected]
Para cambiar la duración de las sesiones en
phpMyAdmin, podemos buscar la siguiente variable
y poner el valor de la duración de la sesión, en
segundos:
$cfg['LoginCookieValidity'] = 1800;
phpMyAdmin – instalación
06/06/[email protected]
Si importamos y exportamos bases de datos muy
grandes, puede llegar a ser necesario aumentar el
tiempo máximo de ejecución del script. Éste se
puede cambiar con la siguiente variable, cuyo valor
viene dado en segundos:
$cfg['ExecTimeLimit'] = 300;
phpMyAdmin – instalación
06/06/[email protected]
Guardamos el archivo
pero no lo cerramos.
Vamos a probar el
phpMyAdmin
introduciendo esta
dirección en el
navegador:
http://localhost/phpmyadmin
Debe aparecer igual
que la imagen.
phpMyAdmin – instalación
06/06/[email protected]
06/06/[email protected]
Configurar usuarios de MySQL
06/06/[email protected]
Configurar usuarios de MySQL
06/06/[email protected]
A estas alturas, todo
debería funcionar sin
ningún problema.
No olvidar que nuestro
usuario es root o Root
sin ninguna contraseña.
Una vez claro, entra al
phpMyAdmin.
Configurar usuarios de MySQL
06/06/[email protected]
Configurar usuarios de MySQL
06/06/[email protected]
Vamos entrar en http://localhost/phpmyadmin y
hacemos lo siguiente.
Crear nuestro propio usuario o usuarios.
Borrar usuarios no deseados (como el usuario root).
Aplicar los cambios realizados.
Configurar phpMyAdmin y los scripts para el nuevo
usuario.
06/06/[email protected]
Creación de nuestro usuario para MySQL
06/06/[email protected]
Una vez dentro de la página principal de phpMyAdmin, debemos encontrar “Privilegios”.
Si aparece la imagen de abajo, mejor crear la contraseña de root desde MySQL.
Creación de nuestro usuario para MySQL
06/06/[email protected]
Vete a InicioTodos los
programasMySQLM
ySQL Server 5.1MySQl
Server Instance Config
Wizard.
Sigue el proceso como
hicimos pasos atrás.
Como no tiene contraseña
de root, déjala en blanco y
pon una nueva, en este
ejemplo hemos puesto
como contraseña 1234.
Creación de nuestro usuario para MySQL
06/06/[email protected]
Creación de nuestro usuario para MySQL
06/06/[email protected]
Ahora podemos entrar
como usuario root y
contraseña 1234.
Creación de nuestro usuario para MySQL
06/06/[email protected]
Ya podemos hacer click
en Privilegios y en la
siguiente página
pulsamos Agregar un
nuevo usuario.
Creación de nuestro usuario para MySQL
06/06/[email protected]
Vamos a agregar nuestro usuario y contraseña, que
será el que usemos luego en nuestros scripts que
hagan uso de MySQL. Por ejemplo, podemos poner
el mismo usuario y contraseña que tenemos en
nuestro hosting, pues así tendremos menos cosas
que recordar. Como ejemplo, pongamos el usuario
Acaymo y la contraseña Metaconta2009.
Creación de nuestro usuario para MySQL
06/06/[email protected]
Introduciremos el nombre de usuario y contraseña,
le daremos acceso a Cualquier servidor (para que
se pueda acceder a MySQL desde cualquier IP,
incluidas las externas a nuestro ordenador) o a
Local (si sólo queremos que se acceda desde
nuestro ordenador donde hemos instalado MySQL)
y le daremos todos los permisos y privilegios
(marcando todas las casillas que aparecen).
Hacemos clic en Continuar.
Ver imagen página siguiente.
Creación de nuestro usuario para MySQL
06/06/[email protected]
Creación de nuestro usuario para MySQL
06/06/[email protected]
Creación de nuestro usuario para MySQL
06/06/[email protected]
Si has pulsado continuar, te aparecerá esta imagen
que significa que lo has hecho bien.
06/06/[email protected]
Borrado de usuarios no deseados
06/06/[email protected]
Una vez creado nuestro usuario o usuarios, vamos a
borrar aquél que se crea por defecto y que conviene
borrar para evitar brechas de seguridad, sobre todo
si vamos a usar el PC como servidor hacia Internet y
no sólo para hacer pruebas desde nuestro hogar.
Vamos a borrar el usuario root y dejaremos el que
acabamos de crear. Lo hacemos de una forma
rápida y sencilla desde el mismo link Privilegios de
antes: seleccionar los usuarios que no queramos y
presionar Continuar en el apartado que dice
Eliminar a los usuarios seleccionados.
Borrado de usuarios no deseados
06/06/[email protected]
Borrado de usuarios no deseados
06/06/[email protected]
06/06/[email protected]
Recarga de privilegios
06/06/[email protected]
Una vez creado o eliminado algún usuario, veremos
que phpMyAdmin tiene en la parte inferior de la
pantalla un aviso en un cuadro rojo, que dice que
debemos recargar los privilegios, y nos proporciona
un link donde debemos hacer clic para que los
cambios sean efectivos. Este paso es importante,
pues si no recargamos los privilegios, ningún cambio
anterior ser hará efectivo hasta entonces.
Configurar los scripts para el nuevo usuario
06/06/[email protected]
Una vez borrado el usuario root y recargados los
privilegios, phpMyAdmin deja de funcionar. El motivo
es bien simple: al entrar antes a phpMyAdmin,
usamos el usuario root con la contraseña 1234, y
este usuario lo acabamos de eliminar. Entonces
ahora tendremos que volver a entrar pero ya con
nuestro usuario y contraseña elegidos: Acaymo y
Metaconta2009.
Configurar los scripts para el nuevo usuario
06/06/[email protected]
Bien, ya casi está todo. Ahora vamos a ver las distintas formas que tenemos para entrar a phpMyAdmin. Como mencionamos hace unas líneas, una de las formas de autentificarse en esta aplicación es usando el método cookie, que lo que hace es pedirnos usuario y contraseña y guarda la sesión con una cookie. Una forma alternativa es usar http, que es muy parecida solo que el usuario y contraseña se introducen en un cuadro de diálogo, a través de HTTP y no de cookies. El último método, config, consiste en que en el propio archivo config.default.php escribimos nuestro usuario y contraseña, de tal forma que nunca hará falta introducirlos; es menos seguro, ya que cualquiera podría entrar, pero si somos el único usuario del ordenador, quizá sea interesante para evitar tener que poner los datos cada vez que vamos a acceder.
Configurar los scripts para el nuevo usuario
06/06/[email protected]
Para configurar este tipo de acceso, volvemos al
config.default.php del phpMyAdmin, que no
habíamos cerrado y localizamos estas variables:
$cfg['Servers'][$i]['auth_type']
$cfg['Servers'][$i]['user']
$cfg['Servers'][$i]['password']
Configurar los scripts para el nuevo usuario
06/06/[email protected]
Y les cambiamos su valor. En la primera podemos poner config, http o cookie, según hemos visto (si dudamos, lo mejor es usar cookie). Con el método config, y sólo en ese caso, a la segunda le damos el nombre de usuario y a la tercera la contraseña del usuario que acabamos de crear. Por ejemplo si hemos usado el método cookie, quedaría así (sin usuario ni contraseña):
$cfg['Servers'][$i]['auth_type'] = 'cookie';$cfg['Servers'][$i]['user'] = '';$cfg['Servers'][$i]['password'] = '';
Configurar los scripts para el nuevo usuario
06/06/[email protected]
Y si queremos usar el método config con nuestro
usuario Acaymo y contraseña Metaconta2009,
quedaría así:
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = „Acaymo';
$cfg['Servers'][$i]['password'] = „Metaconta2009';
Configurar los scripts para el nuevo usuario
06/06/[email protected]
NOTA: phpMyAdmin puede tener un fallo (bug
conocido) en esta zona. Al usar autentificación
HTTP, un usuario que acaba de abandonar la sesión
no puede volver a entrar con el mismo nombre. Para
solucionarlo, se deben cerrar todas las ventanas del
navegador que estén abiertas, y a continuación si
abrimos una nueva ventana y volvemos a intentar
entrar nos debería dejar sin problemas. Para
evitarlo, y que al entrar siga pidiendo usuario y
contraseña, de los dos métodos recomendamos
utilizar el cookie.
Configurar los scripts para el nuevo usuario
06/06/[email protected]
Si ahora desde el navegador, y con el Apache y
MySQL activos, accedemos a la dirección
http://localhost/phpmyadmin podemos empezar a
utilizar phpMyAdmin con el nuevo usuario y
contraseña. Si elegimos pedir usuario y contraseña,
cuando accedamos a phpMyAdmin tendremos que
introducirlos de nuevo: Acaymo como usuario y
Metaconta2009 como contraseña, si hemos seguido
el ejemplo. Por tanto, podemos empezar a usar
phpMyAdmin, y quizá lo primero que interese hacer
sea crear una nueva base de datos para meter ahí
lo que queramos.
Configurar los scripts para el nuevo usuario
06/06/[email protected]
De la misma forma, en nuestros archivos PHP que
usen MySQL usaremos el usuario y contraseña que
nos hemos creado, de tal forma que al hacer la
conexión a MySQL quede algo como esto:
<?php
// funciones…
mysql_connect("127.0.0.1",“Acaymo",“Metaconta2009");
// sigue con más funciones…
?>
Configurar los scripts para el nuevo usuario
06/06/[email protected]
Si estamos instalando un prefabricado como PHP
Nuke, Joomla o un foro phpBB, o cualquier
aplicación en la que nos solicitan un host, usuario y
contraseña, los datos que deberemos indicar son
esos: 127.0.0.1 o localhost como servidor, Acaymo
como usuario, Metaconta2009 como contraseña, y
el nombre de la base de datos que hayamos creado
con phpMyAdmin. No obstante, se recomienda tener
unos conocimientos básicos sobre MySQL en PHP
para manejar correctamente estas funciones.
06/06/[email protected]
ArGoSoft Mail Server
06/06/[email protected]
Si vamos a hacer pruebas con envío de correos o bien
vamos a usar nuestro PC como servidor de nuestra web,
es posible que nos interese instalar un pequeño servidor
de correo para poder usar la función mail() de PHP. Con
uno de estos servidores podremos enviar correos desde
PHP, pero obviamente no podremos recibir nada ya que
se tratan de servidores SMTP (enviar) y no POP/IMAP
(recibir). Lo que sí hay que tener en cuenta es que para
que estos servidores de correo funcionen, hay que tener
conexión a Internet. Vamos entonces a ello. En principio
no hay que cambiar nada en el php.ini ya que éste viene
por defecto configurado para un servidor de correo
instalado en local, que es de lo que trata este manual.
ArGoSoft Mail Server
06/06/[email protected]
Pero sí podremos cambiar la variable sendmail_from, que será el remitente que le aparecerá a la persona que reciba el correo si no ponemos el campo From en las cabeceras del email mediante la función mail()
[mail function]; For Win32 only.SMTP = localhost
; For Win32 only.sendmail_from = [email protected]
ArGoSoft Mail Server
06/06/[email protected]
Una opción de servidor sería el QK SMTP, pero
hemos elegido el Argosoft Mail Server por su
sencillez de uso. Este servidor tiene versión gratuita
con pequeñas limitaciones (no admite correos de
más de 5 MB, por ejemplo). Estará en la sección de
descargas de la web oficial http://www.argosoft.com,
con el nombre Mail Server .NET Freeware. En la
fecha de actualización de este manual, la última
versión disponible era la 1.0.0.2. Una vez lo
instalamos instalado, requiere una pequeña
configuración.
ArGoSoft Mail Server
06/06/[email protected]
Vete a la página principal http://www.argosoft.com y
pincha en el recuadro rojo de la imagen de abajo.
ArGoSoft Mail Server
06/06/[email protected]
Haz click en Download ArGoSoft Mail Server .NET
Freeware como muestra en la imagen.
ArGoSoft Mail Server
06/06/[email protected]
Llegarán a un cuadro como este. No recomiendo que ingresen tu propio e-
mail porque lo que conseguirás es que te lleguen publicidad. Te lo inventas y
pulsa Ok.
ArGoSoft Mail Server
06/06/[email protected]
Ejecutamos el archivo
descargado que desde
que se hizo este
manual se llamaba
MailServerFreeSetup.
msi.
ArGoSoft Mail Server
06/06/[email protected]
ArGoSoft Mail Server
06/06/[email protected]
ArGoSoft Mail Server
06/06/[email protected]
ArGoSoft Mail Server
06/06/[email protected]
ArGoSoft Mail Server
06/06/[email protected]
ArGoSoft Mail Server
06/06/[email protected]
Verás un acceso directo
en el escritorio.
Haz doble click en él
para ejecutarlo.
ArGoSoft Mail Server
06/06/[email protected]
Se abre una ventana
Seleccionamos las casillas Automatically Start theServer y Allow Relay.
En DNS Server tenemos que poner la dirección IP de algún servidor DNS. Si no sabemos ninguna, nada más fácil que hacer una búsqueda en nuestro amigo Google usando términos como listado servidores DNS. Por ejemplo, vamos a usar uno de los servidores OpenDNS, 208.67.222.222ó 208.67.220.220, en concreto el primero de ellos.
ArGoSoft Mail Server
06/06/[email protected]
ArGoSoft Mail Server
06/06/[email protected]
Para activar el servidor,
pulsamos el botón Start
(triángulo verde), y para
pararlo el botón Stop
(cuadrado rojo). Lo
dejamos activo
(quedará un icono al
lado del reloj) y ya
podemos usar scripts
PHP que hagan uso de
la función mail().
06/06/[email protected]
Realizar actualizaciones
Cómo realizar las actualizaciones a versiones superiores
06/06/[email protected]
Realizar actualizaciones
06/06/[email protected]
Normalmente es mejor ir a la última. Cuando
desarrolladores de programa actualizan sus
productos, es por algo. Sea por tener mejor
rendimiento, nuevas funciones, seguridad,
estabilidad, etc.
Sigue los pasos siguientes para su actualización.
Realizar actualizaciones
06/06/[email protected]
¿Cómo actualizar Apache?
Para actualizarlo, lo primero es desinstalar el programa desde el Panel de Control -> Agregar o Quitar Programas. A continuación, borraremos manualmente aquellas carpetas del Apache que el desinstalador no haya borrado, que pueden ser aquellas que contienen los logs del servidor. Y finalmente, instalaremos la nueva versión de Apache y configuraremos el httpd.conf igual que se explica en los pasos anteriores, usando las mismas carpetas que usamos en la versión anterior de Apache para que nada cambie.
Realizar actualizaciones
06/06/[email protected]
¿Cómo actualizar PHP?
Lo primero, paramos nuestro servidor Apache para evitar que los archivos de PHP estén en uso. A continuación eliminaremos la carpeta que se encuentra en C:\Servidor\PHP\ Luego instalaremos la nueva versión de PHP como se dice más arriba, configuraremos el nuevo php.ini, y en los pasos que se dice que copiemos ciertos archivos a los directorios de Windows, sobre escribiremos todos archivos existentes con los nuevos, incluido el nuevo php.ini Ya sólo queda arrancar de nuevo el Apache y ver si todo ha ido bien.
Realizar actualizaciones
06/06/[email protected]
¿Cómo actualizar MySQL?
Antes de empezar, convendría apagar el Apache para evitar que haya archivos en uso. A continuación, copiaremos el directorio data (que está dentro de la carpeta de MySQL y es el que contiene nuestras bases de datos, tablas, etc. que queremos conservar) a otro directorio cualquiera de forma temporal. Luego desinstalaremos MySQL desde el Agregraro Quitar Programas de Windows. Finalmente, instalaremos la nueva versión de la misma forma que antes, tras lo cual copiaremos el directorio data de nuevo a la carpeta de MySQL sobreescribiendo el que haya, y de esta forma no se pierden los datos de nuestras bases de datos. Y finalmente sólo queda iniciar el servicio MySQL, y comprobar si los scripts y phpMyAdmin siguen funcionando.
Realizar actualizaciones
06/06/[email protected]
Si estamos migrando de una versión MySQL 3.x ó 4.0 a una 4.1 ó superior (5.x), se origina el problema de que los usuarios de MySQL siguen usando el sistema antiguo de contraseñas no encriptadas, así que hay que migrarlas al nuevo sistema, o bien como suelen recomendar, usar el sistema viejo de uso de contraseñas. Más información en este link: http://dev.mysql.com/doc/refman/5.0/en/old-client.html
NOTA: Si usamos alguna versión antigua de MySQL(con la 5.X no sucede), cuando MySQL se instala, graba un fichero llamdo my.ini en la carpeta de Windows. Allí quedan los datos de usuario y contraseña. Si tenemos problemas al actualizar, borraremos ese fichero antes de instalar de nuevo MySQL.
Realizar actualizaciones
06/06/[email protected]
¿Cómo actualizar phpMyAdmin?
Éste es más sencillo de actualizar, pues lo único que
hay que hacer es borrar el anterior y luego instalar y
configurar el nuevo como se cita más arriba.
Además, si usamos el método config, nos
aseguramos también de cambiar el usuario y
contraseña para que luego funcione.
Realizar actualizaciones
06/06/[email protected]
¿Cómo actualizar ArGoSoft Mail Server?
Simplemente se desinstala la versión anterior y se
instala la nueva. Es posible que la configuración se
mantenga, pero conviene que la comprobemos, y si
no se mantiene entonces la volvemos a realizar.
06/06/[email protected]
Manejo de más de un sitio web: VirtualHosts
06/06/[email protected]
Con esto ya hemos terminado la instalación de un
servidor básico para hacer pruebas en nuestro
ordenador sin necesidad de conectarnos a Internet. Pero
puede que seamos administradores de más de un sitio
web, y nos interese tener más de un sitio web en nuestro
servidor local. Si es así, seguimos leyendo, si no,
podemos saltar este paso. Una forma de hacerlo sería
crear distintas carpetas en nuestro DocumentRoot, y
después acceder tecleando algo como
http://localhost/sitio_web_1/carpeta/archivo.php para
entrar al sitio 1, o bien
http://localhost/sitio_web_2/otra_carpeta/otro_archivo.ph
p para entrar al sitio 2.
Manejo de más de un sitio web: VirtualHosts
06/06/[email protected]
Pero es fácil ver que eso no es una forma elegante
de hacerlo. ¿Se podría evitar el uso de este tipo de
URL? La respuesta es sí, y para eso podemos usar
los VirtualHost de Apache. Cada uno será como un
sitio web diferente, con su propio DocumentRoot.
Veremos a través de un ejemplo cómo hacer varios
VirtualHost para alojar varios sitios web en nuestro
servidor.
VirtualHosts en Apache 2.0.x
06/06/[email protected]
Si abrimos el archivo httpd.conf de Apache 1.3.X o
2.0.X y nos vamos al final, encontramos algo como
esto:
#
# Use name-based virtual hosting.
#
#NameVirtualHost *:80
VirtualHosts en Apache 2.0.x
06/06/[email protected]
En la línea NameVirtualHost debemos quitar el # de delante para activarla. Esta línea indica que los VirtualHost que vamos a usar pueden escuchar en cualquier dirección IP por el puerto 80, así nos evitamos tener que definir una IP para los accesos locales y otra para los externos (en caso de que los hubiera, si usamos el servidor de cara a Internet). Si eres administrador de red y necesitas llevar un control más exhaustivo de los accesos que se producen a tu red (internos y externos), puede que desees cambiar esta opción, pero ello escapa de los objetivos de esta guía. Por tanto, debe quedar así:
## Use name-based virtual hosting.#NameVirtualHost *:80
VirtualHosts en Apache 2.0.x
06/06/[email protected]
Bien, si bajamos un poco más, encontramos un ejemplo:
# VirtualHost example:# Almost any Apache directive may go into a VirtualHostcontainer.# The first VirtualHost section is used for requests without a known# server name.##<VirtualHost *:80># ServerAdmin [email protected]# DocumentRoot /www/docs/dummy-host.example.com# ServerName dummy-host.example.com# ErrorLog logs/dummy-host.example.com-error_log# CustomLog logs/dummy-host.example.com-access_logcommon#</VirtualHost>
VirtualHosts en Apache 2.0.x
06/06/[email protected]
Como hemos dicho, podemos añadir todos los que queramos, para eso simplemente vamos copiando y pegando las líneas del VirtualHost, quitando los # del principio (que sirven para comentar las líneas), y configurando los datos de cada VirtualHost. Como vamos a hacer VirtualHosts cuya resolución sea por nombre y no por IP, en todos ellos colocaremos Virtualhost *:80 para indicar que pueden atender en cualquier IP por el puerto 80.
ServerAdmin: dirección email del administrador.
DocumentRoot: ruta donde se encuentran los archivos del sitio web asociado a ese VirtualHost.
ServerName: nombre del Virtualhost, que se usará para la resolución por nombre.
ErrorLog: archivo .log para almacenar los errores que se generen en el sitio web.
CustomLog: archivo .log para almacenar los accesos a este sitio web.
VirtualHosts en Apache 2.0.x
06/06/[email protected]
Cuando hemos dicho que vamos a hacer resolución por nombre, ¿qué quiere decir esto? Bien, tratemos de explicarlo. En principio en esta guía asumimos que el servidor que estamos instalando posee una única dirección IP, que en modo local es 127.0.0.1 y de cara a Internet es nuestra IP pública (la que nos dé nuestro proveedor de Internet). Cuando entramos a un sitio web a través de un nombre de dominio (www.dominio.com), éste redireccionará a nuestra dirección IP, y es entonces cuando el servidor debe decidir a qué VirtualHostpertenece la petición que se le está haciendo, ya que por la IP no lo puede saber (puede haber muchos VirtualHosts con una misma IP). ¿Y cómo lo decide? Pues mirando cuál es el nombre de dominio (el host) que se ha usado en la petición. Por eso en ServerNamedebemos poner el nombre del host que se va a usar.
VirtualHosts en Apache 2.0.x
06/06/[email protected]
Hay un parámetro que no viene incluido en el
ejemplo pero que sin embargo es interesante, y es
ServerAlias. Funciona de manera similar a
ServerName. Lo que hace es definir alias, nombres
alternativos para nuestro VirtualHost. ¿Y cuándo se
usa? Pues cuando deseemos que se pueda acceder
a un sitio web usando diferentes nombres, por
ejemplo que se pueda acceder poniendo
http://dominio.com o bien http://www.dominio.com o
bien http://cualquiercosa.dominio.com. Ahora
veremos un ejemplo.
VirtualHosts en Apache 2.0.x
06/06/[email protected]
Vamos a hacer un caso práctico. Por ejemplo, vamos a crear tres sitios web: dos páginas web distintas, y un tercer sitio que contenga únicamente a phpMyAdmin(para tener esta aplicación separada de los otros dos sitios web). Dentro de la carpeta C:/Servidor/Web/ nos creamos tantas subcarpetas como sitios web vayamos a añadir, y dentro de cada subcarpeta meteremos los archivos correspondientes a ese sitio. También podríamos elegir cualquier carpeta en cualquier sitio, ya que cada VirtualHost tendrá su propio DocumentRootindependiente del resto. Para nuestro ejemplo, se han creado las subcarpetas SitioA, SitioB y phpMyAdmin, por lo que añadiríamos los tres VirtualHosts al final del httpd.conf:
VirtualHosts en Apache 2.0.x
06/06/[email protected]
<VirtualHost *:80>ServerAdmin [email protected] "C:/Servidor/Web/SitioA"ServerName sitioaErrorLog logs/SitioA-error_logCustomLog logs/SitioA-access_log common
</VirtualHost>
<VirtualHost *:80>ServerAdmin [email protected] "C:/Servidor/Web/SitioB"ServerName sitiobErrorLog logs/SitioB-error_logCustomLog logs/SitioB-access_log common
</VirtualHost>
VirtualHosts en Apache 2.0.x
06/06/[email protected]
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Servidor/Web/phpMyAdmin"
ServerName phpmyadmin
ErrorLog logs/phpMyAdmin-error_log
CustomLog logs/phpMyAdmin-access_log
common
</VirtualHost>
VirtualHosts en Apache 2.0.x
06/06/[email protected]
Fijémonos en que cada uno tiene su propio
DocumentRoot, por eso podemos y debemos meter los
archivos de cada sitio web en carpetas diferentes, las ahí
escritas. También vemos el nombre que hemos asignado
para entrar a los VirtualHost, definido en ServerName.
Por ejemplo para el caso del sitio A deberíamos entrar
tecleando algo como http://sitioa/
Pero si tecleamos eso en el navegador, nos da error de
que no se encuentra la página o no se puede resolver el
nombre de dominio. Lógico, porque ese nombre de
dominio no existe como tal y no tiene asignada ninguna
dirección IP. Ahora vamos a ver cómo asignar una
dirección IP a ese nombre.
VirtualHosts en Apache 2.0.x
06/06/[email protected]
Para ello, debemos abrir el fichero de Hosts de Windows, con un editor de texto como el bloc de notas. Este archivo puede estar localizado en C:\Windows\Hosts (Windows 95/98/Me), en C:\WINNT\System32\drivers\etc (Windows NT/2000) o en C:\WINDOWS\system32\drivers\etc (Windows XP/2003). Antes de abrirlo, debemos ir a sus propiedades y deshabilitar el modo Sólo lectura en caso de que lo tenga, para que podamos modificarlo. Ahora añadimos los sitios web creados de la misma forma que podremos ver en el ejemplo que viene en el archivo. Como dirección IP, usamos la IP local 127.0.0.1, y como nombre de servidor usamos el mismo valor que usamos en el VirtualHost en ServerName. De tal forma que para nuestro ejemplo quedaría algo así (la primera línea ya viene por defecto incluida):
# Por ejemplo:
VirtualHosts en Apache 2.0.x
06/06/[email protected]
# 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
127.0.0.1 sitioa
127.0.0.1 sitiob
127.0.0.1 phpmyadmin
VirtualHosts en Apache 2.0.x
06/06/[email protected]
Guardamos el archivo, y le asignamos el modo de Sólo
lectura por seguridad. Así que cuando queramos entrar
a uno de los sitios web, debemos teclear http://sitioa/ o
http://sitiob/ y cuando queramos entrar a phpmyadmin,
teclearemos http://phpmyadmin/ ¿Más sencillo de
recordar, verdad?
NOTA: si usamos VirtualHost, no debemos olvidar
reconfigurar el phpMyAdmin: hay que editar el archivo
config.default.php y cambiar el valor de la variable
$cfg['PmaAbsoluteUri'], pues ahora deberá tener
http://phpmyadmin/ En general, debemos reconfigurar
cualquier otro script que use direcciones URL absolutas
y no relativas.
06/06/[email protected]
VirtualHosts en Apache 2.2.x
06/06/[email protected]
En la serie 2.2.x de Apache cambia ligeramente la configuración de los VirtualHost. Exite un archivo en C:\Archivos de programa\Apache Group\Apache\conf\extra\httpd-vhosts.conf que es donde debemos introducir la información de los VirtualHost que acabamos de ver. Una vez hecho, dentro del httpd.conf debemos buscar esto:
# Virtual hosts#Include conf/extra/httpd-vhosts.conf
Y activamos la inclusión de ese archivo:
# Virtual hostsInclude conf/extra/httpd-vhosts.conf
06/06/[email protected]
Cara Internet
06/06/[email protected]
Bien, hasta aquí hemos hecho lo necesario para
manejar más de un sitio web en nuestro servidor
local. Hemos asignado un único ServerName a cada
sitio web ya que sólo accederemos desde nuestro
ordenador tecleando un único nombre. Si además
de acceder desde nuestro ordenador deseamos
acceder desde Internet, vamos a añadir algunos
alias y ver otros aspectos importantes a tener en
cuenta.
Cara Internet
06/06/[email protected]
Como dijimos más arriba, la resolución del
VirtualHost se hace por nombre. Esto quiere decir
que desde local podemos acceder tecleando
http://sitioa/ (como ejemplo para el primer sitio que
creamos), pero ¿cómo acceder desde Internet? Lo
lógico es acceder usando una dirección tipo
http://www.sitioa.com o http://sitioa.dnsalias.com,
etc. Para que esto funcione, es necesario añadir
alias a nuestros VirtualHosts.
Cara Internet
06/06/[email protected]
Vamos a hacer un ejemplo para el sitio A. Supongamos
que tenemos contratado el nombre de dominio
sitioa.com, en la configuración DNS de dicho dominio
debemos poner la dirección IP pública de nuestro
ordenador o router. Esta dirección IP puede ser estática
o dinámica. Lo ideal es que fuera estática, ya que el
nombre de dominio tiene que redireccionar a alguna IP y
lo lógico es que la IP sea siempre la misma. Pero si fuera
dinámica, existen servicios que dan nombres de dominio
para IP dinámica de forma gratuita, como puede ser
DynDNS.org Este servicio hace que, cuando cambie la
IP pública del servidor, la IP a la que resuelve dicho
dominio también cambie.
Cara Internet
06/06/[email protected]
En el VirtualHost de nuestro sitio A, que ya
habíamos configurado para acceder localmente,
añadiremos el ServerAlias, asignándole todos los
posibles nombres que puede tomar nuestro host.
Por ejemplo, supongamos que los usuarios pueden
teclear http://sitioa.com o http://www.sitioa.com
Entonces quedaría algo así:
Cara Internet
06/06/[email protected]
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Servidor/Web/SitioA"
ServerName sitioa
ServerAlias sitioa.com *.sitioa.com
ErrorLog logs/SitioA-error_log
CustomLog logs/SitioA-access_log common
</VirtualHost>
Cara Internet
06/06/[email protected]
De esta forma, cuando estemos en local, podemos
teclear http://sitioa/ y accederemos a nuestro sitio
web. Cuando alguien acceda desde Internet (que
puede ser cualquier usuario o incluso nosotros
desde nuestro propio ordenador), puede teclear algo
como http://www.sitioa.com o http://sitioa.com y
también accederá al sitio web, ya que el nombre de
host introducido en la petición web coincide con el
ServerName o el ServerAlias de nuestro VirtualHost.
Y esto lo haríamos con cada uno de los VirtualHost
a los que deseemos dar acceso de cara a Internet.
Cara Internet
06/06/[email protected]
Aspecto importante 1: si damos acceso a nuestro
servidor desde Internet, debemos tener en cuenta
que si usamos algún firewall, habrá que configurarlo
para permitir a Apache que funcione como servidor,
recibiendo conexiones desde Internet. Igualmente si
estamos detrás de un router, habrá que
redireccionar el puerto 80 a nuestro PC
(denominado habitualmente Port Range Forwarding
o NAT en destino).
Cara Internet
06/06/[email protected]
Aspecto importante 2: si vamos a acceder a un sitio web tanto en local como desde Internet, debemos tener en cuenta que el nombre de host cambia, esto quiere decir que debemos evitar hacer referencias absolutas a nuestros archivos, por ejemplo evitar poner las imágenes como <imgsrc="http://sitioa/imagen.gif"> ya que, en este ejemplo, sólo funcionará cuando un usuario entre localmente y no cuando entre desde Internet (para entrar desde Internet sería <imgsrc="http://sitioa.com/imagen.gif">). Existen dos posibles soluciones, una usar referencias relativas a nuestros archivos (<img src="/imagen.gif">) y otra usando variables de PHP que dan el nombre de host, como $_SERVER['SERVER_NAME'](<img src="<?php echo $_SERVER['SERVER_NAME']; ?>/imagen.gif">), pero esto es un tema de programación en sí y no se hablará más en esta guía.
06/06/[email protected]
Otros manuales
06/06/[email protected]
Otros manuales
DESCARGAS DE MANUALES
06/06/[email protected]
Puedes descargar otros
manuales.
Manuales
Manuales
Manuales
Enlaces de interés
Enlaces de páginas Web donde podrás encontrar más
información.
06/06/[email protected]
Enlaces de interés
06/06/[email protected]
http://www.apache.org Servidor Apache más popular, estable, seguro y usado hasta la fecha.
http://www.php.net Potente programa para hacer script Web.
http://www.mysql.com Base de datos más robusto en varios sistemas operativos. Es uno de los más estable, seguro y muy usado actualmente.
http://www.phpmyadmin.net Administrador de bases de datos por vía web más famoso bajo php.
http://www.phpbb.com Foro phpbb más popular en esta comunidad.
http://www.joomla.org Web prefabricada oficial bajo php y MySQL.
http://www.joomlaspanish.org Igual que la anterior pero con el pack ya incluido todo en español.
Enlaces de interés
06/06/[email protected]
Este manual fue desarrollado gracias a la
información desde:
http://www.maestrosdelweb.com/editorial/phpmysqla
p/
http://www.mundodivx.com/php
Contacto
Cualquier comentario,
sugerencia o mejoras del
manual, me lo envían por
correo electrónico al
06/06/[email protected]
Puedes publicar este tutorial o
manual en tu Web, foros, blogs,
CD, DVD o Blu-Raypara revistas
oficiales, etc, libremente.