instalacion de apache + mysql + php + phpmyadmin

Estado
Cerrado para nuevas respuestas

Mau85

Nuevo Miembro
Miembro
Hola. Lo primero que hay que definir es que es php:

PHP es el acrónimo de "PHP: Hypertext Preprocessor", es decir, un "preprocesador del hipertexto" que se basa en una sintaxis parecida al C, al Java y al Perl, por supuesto con unos añadidos más. Nació en 1994 como proyecto "personal" y la primera versión se utilizó públicamente en 1995 con el nombre "Personal Home Page". El resto es historia. Como cada buen proyecto que llama la atención de los usuarios y de los programadores, el lenguaje se ha desarrollado como proyecto open-source hasta el punto que, en 1996, ya se estaba utilizando en 15.000 sitios web. En el momento de la release 3 (a mediados de 1999) el número de servidores que utilizaban PHP se había decuplicado.

El PHP es un lenguaje de scripting server-side. Se trata de un lenguaje "embeeded" en las páginas que lo incluyen, por citar un ejemplo, el lenguaje Javascript. La principal diferencia es que el PHP lo ejecuta en el servidor en lugar de en el cliente directamente. Por lo tanto, no se necesitan compatibilidades particulares o estándar definidos por otros (como el ejemplo más clásico del Javascript). El mecanismo de realización de los script, para los que los conocen, es parecido al lenguaje ASP.

Por ejemplo, si en una página estuviera el código:

Insertar CODE, HTML o PHP:
<html><body>

<? phpinfo(); ?>

</body></html>
si invocáis la página desde el browser, no veis la línea del código entre <? y ?> (las verdaderas etiquetas del PHP), sino el resultado que esta instrucción devuelve. En la práctica, el servidor HTTP, una vez que se le haya solicitado una página parecida, la reconoce (si ha sido configurado debidamente) y pone en marcha la parte "dinámica". Lo que llega a vuestro browser es la elaboración de este código y podéis entender que se trata de una página escrita en lenguaje PHP sólo por su extensión (típicamente .php3).

Las posibilidades del lenguaje PHP son excelentes, hasta el punto que es posible crear en PHP todas las aplicaciones que se podrían crear con unos script CGI. La diferencia principal entre los dos es que el primero hace mucho más simple la conexión y las preguntas con las bases de datos; el PHP3 soporta las siguientes bases de datos:

1. Adabas D

2. InterBase

3. Solid

4. dBase

5. mSQL

6. Sybase

7. Empress

8. MySQL

9. Velocis

10. FilePro

11. Oracle

12. Unix dbm

13. Informix

14. PostgreSQL

Al igual que con los CGI, con el PHP es posible utilizar los protocolos de red más famosos como IMAP, SMTP, POP3 e incluso HTTP, o utilizar los socket (enchufes).

Lo segundo es como instalarlo en nuestro PC, para probarlo. En este caso mostrarle como intalar el apache server 2.x con el mysql 4.x y el php4 y el phpmyadmin
 

Mau85

Nuevo Miembro
Miembro
1. instalación del apache 2.x y lo puedes bajar de apache.org

Para esta versión, en la fecha de actualizción del manual la última versión disponible era la 2.0.53, por lo que el archivo que tenemos que bajar puede ser: apache_2.0.53-win32-x86-no_ssl.exe También puede existir el mismo archivo pero con extensión msi, en este caso podríamos bajarlo si disponemos del Windows Installer, la ventaja es que ocupa menos.

Bien, una vez que lo tengamos ejecutamos el instalador y vamos recorriendo las pantallas hasta que salga una donde nos piden unos datos, en cuyo caso pondremos:

Network Domain: 127.0.0.1

Server Name: 127.0.0.1

Administrator's Email Address: nuestro e-mail, aunque no es totalmente necesario.

For All Users, on Port 80, as a Service: seleccionamos esta opción.



La IP 127.0.0.1 es la dirección IP asociada a nuestra máquina, es decir el host local o vulgarmente conocido como Localhost. Es importante decir que a la hora de probar tus scripts en modo local, da igual que pongas 127.0.0.1 o localhost. Finalmente, recordar que el Apache se instala por defecto en la carpeta:

C:\Archivos de programa\Apache Group\Apache\

Bien, ahora vamos a instalar el PHP. Asegúrate ahora de tener cerrado el Apache
 

Mau85

Nuevo Miembro
Miembro
2. Instalación de PHP4

Procedemos a descargar el PHP para Windows. El archivo está localizado en la sección Downloads, apartado Windows Binaries, y es el Zip Package (no el installer, aunque éste ocupe menos luego no nos servirá). Para la versión 4.3.10, que es la versión disponible a fecha de actualización de este manual, es: PHP 4.3.10 zip package [7,405Kb]. Según vayan saliendo nuevas versiones podrás irlas encontrando en la citada sección downloads.

Una vez descargado todo el ZIP, nos creamos una carpeta en el sitio donde queramos instalar los archivos del servidor (PHP, MySQL...), por ejemplo nos creamos una carpeta en la raíz del disco duro y que quede así: C:\Servidor\ Ahora extraemos los archivos del ZIP de PHP dendro de esa carpeta. En este caso se crea la carpeta C:\Servidor\php-4.3.10-Win32\ pero como no nos gusta su nombre procedemos a renombrarla a C:\Servidor\PHP\

Y ahora hay que coger el php4ts.dll (localizado en C:\Servidor\PHP\php4ts.dll) y copiarlo al directorio System (en Windows 9x) o System32 (NT,2000,XP,2003) de la carpeta del Windows. Si hay otro archivo en System o System32 lo sobreescribimos. Igualmente coger los archivos que están en la carpeta C:\Servidor\PHP\dlls\ y copiarlos a la carpeta System o System32 igual que hicimos con el archivo php4ts.dll
 

Mau85

Nuevo Miembro
Miembro
3. configurando el PHP4

El siguiente paso es configurar el php.ini. Renombramos o copiamos el archivo C:\Servidor\PHP\php.ini-dist y le ponemos php.ini Ahora lo editamos con el mismo block de notas. Si lo necesitáramos (lee antes la explicación), editamos la línea register_globals = Off y la colocamos el valor: register_globals = On

¿Qué hago con register_globals? ¿ON u OFF?

Activar esta directiva nos permite asumir que las variables son globales y pueden llegar por cualquier método (POST, GET, COOKIE, SERVER, etc). Así, por ejemplo, si utilizamos una variable global de sesión o cookie se puede suplantar fácilmente mediante una variable por url, con lo cual nuestro script no es seguro. Un buen programador de PHP tendría la directiva en OFF y usaría los arrays globales ($HTTP_X_VARS) o los superglobales $_POST, $_GET, etc., que están disponibles a partir de la versión 4.1.X de PHP. ¿Y por qué? Pues por esos temas de seguridad en los script y porque debemos acostumbrarnos a no manejar variables globales ya que en un futuro el PHP tendrá la opción en OFF por defecto y no podremos cambiarla. Sin embargo, por temas de compatibilidad con script antiguos o que hagan uso de variables globales, podría interesarnos activar esta característica, pero repito que lo deseable sería tenerla en OFF y hacer uso de los arrays globales o superglobales.

A continuación vamos a indicar a PHP dónde se guardan las extensiones. Dentro del php.ini buscamos extension_dir y le ponemos la carpeta que contiene los archivos php_xxx.dll, que por defecto es la carpeta extensions dentro de PHP. IMPORTANTE: durante toda la configuración de directorios, debes utilizar esta barra "/" y no esta "\", además de ponerlo entre comillas. O sea, que debe quedar así:

Insertar CODE, HTML o PHP:
; Directory in which the loadable extensions (modules) reside.

extension_dir = "C:/Servidor/PHP/extensions/"
Además podemos activar las extensiones que queramos o necesitemos, para lo cual buscamos Windows Extensions y para cargar las extensiones les quitamos el ; de delante. Por ejemplo, si quisiéramos cargar la extensión gd2.dll (para manejar las funciones PHP relativas a imágenes) deberíamos cambiar ;extension=php_gd2.dll por extension=php_gd2.dll Puedes ver para qué sirve cada extensión en el Manual oficial de php. Como nota adicional, resaltar que hay algúnas extensiones que requieren de librerías extra que no vienen en el paquete completo de PHP, y para hacerlas funcionar tendremos que buscar dichas librerías. No actives todas las librerías a diestro y siniestro porque luego saldrán errores de que no se encuentra tal archivo; antes de instalar una librería, comprueba que en la carpeta de PHP tienes los archivos DLL correspondientes.

Ahora, si vamos a hacer pruebas con upload de archivos via HTTP, debemos indicar el directorio donde los archivos se almacenarán temporalmente. Para ello buscamos upload_tmp_dir y le damos el valor de una carpeta que exista. Por ejemplo, en nuestro directorio C:\Servidor\PHP\ creamos una carpeta uploads, por lo que quedará algo así:

Insertar CODE, HTML o PHP:
; Temporary directory for HTTP uploaded files (will use system default if not

; specified).

upload_tmp_dir = "C:/Servidor/PHP/uploads/"
Si queremos cambiar el tamaño máximo de los archivo que pueden subirse via HTTP, buscamos upload_max_filesize y cambiamos el valor por defecto que trae, 2M (2 MB), por el que queramos. No se recomienda poner un valor alto.

Insertar CODE, HTML o PHP:
; Maximum allowed size for uploaded files.

upload_max_filesize = 2M
Para trabajar con sesiones, debemos especificar un directorio donde se guarden los archivos temporales. Al igual que 2 pasos antes, buscamos session.save_path y le damos el valor de un directorio que exista (o lo creamos):

Insertar CODE, HTML o PHP:
session.save_path = "C:/Servidor/PHP/sessions/"
A continuación copiamos el php.ini a la carpeta C:\Windows\ o C:\WinNT\ según nuestra versión de Windows.

¡Ahora vamos a decirle al Apache que tenemos el PHP!
 

Mau85

Nuevo Miembro
Miembro
4. Configurando el httpd.conf para Apache 2.0.X

Buscamos Dynamic Shared Object (DSO) Support que es donde se cargan los módulos. Ahí vamos a cargar el módulo de PHP para Apache, dando la dirección del archivo php4apache2.dll (PHP4) que lo contiene. Encontramos hasta un ejemplo:

Insertar CODE, HTML o PHP:
 # Example:

# LoadModule foo_module modules/mod_foo.so

#
De tal manera que va a quedar así después de agregarcelo

Insertar CODE, HTML o PHP:
 # Example:

# LoadModule foo_module modules/mod_foo.so

#

LoadModule php4_module C:/Servidor/PHP/sapi/php4apache2.dll
El directorio predeterminado para guardar nuestras páginas es el htdocs del Apache:

C:\Archivos de programa\Apache Group\Apache\htdocs\

Pero podemos cambiarlo fácilmente. Buscamos DocumentRoot y nos sale esto:

Insertar CODE, HTML o PHP:
 #

# DocumentRoot: The directory out of which you will serve your

# documents. By default, all requests are taken from this directory, but

# symbolic links and aliases may be used to point to other locations.

#

DocumentRoot "C:/Archivos de programa/Apache Group/Apache/htdocs"
Nosotros sustituimos la carpeta htdocs del Apache por la que queramos. Todos los archivos que vayas a probar con el Apache deberán estar localizados en esta carpeta. Por ejemplo nos creamos una carpeta WEB dentro del directorio del servidor:

Insertar CODE, HTML o PHP:
 DocumentRoot "C:/Servidor/WEB/"
Por lo que construiremos toda nuestra página dentro de ese directorio, que equivale al directorio raíz de nuestro host local.

Ahora buscamos el DirectoryIndex y nos sale algo como esto:

Insertar CODE, HTML o PHP:
#

# DirectoryIndex: sets the file that Apache will serve if a directory

# is requested.

#

# The index.html.var file (a type-map) is used to deliver content-

# negotiated documents. The MultiViews Option can be used for the

# same purpose, but it is much slower.

#

DirectoryIndex index.html index.html.var
Modificamos la última línea para que si entramos en un directorio tipo http://127.0.0.1/directorio/ nos autoejecute el index predeterminado (si existe) y no nos 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. y lo ponen asi

Insertar CODE, HTML o PHP:
#

# DirectoryIndex: sets the file that Apache will serve if a directory

# is requested.

#

# The index.html.var file (a type-map) is used to deliver content-

# negotiated documents. The MultiViews Option can be used for the

# same purpose, but it is much slower.

#

DirectoryIndex index.html index.htm index.php index.php3 index.php4 index.phtml index.html.var

AddType application/x-httpd-php .php .php3 .php4 .phtml

AddType application/x-httpd-php-source .phps
Y ya podemos guardar el archivo httpd.conf
 

Mau85

Nuevo Miembro
Miembro
5 - Probando nuestro servidor Apache

Ahora vamos a probar el Apache y PHP, para lo cual deberemos arrancar el Apache

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 algúna configuración de PHP "al vuelo") para que al reiniciarlo nos coja los cambios que hemos hecho.

Si todo ha ido bien, podemos crear un archivo llamado por ejemplo info.php dentro de la carpeta de nuestra web cuyo contenido sea exclusivamente el siguiente:

Insertar CODE, HTML o PHP:
<?

phpinfo();

?>
Si accedemos mediante nuestro navegador a la dirección http://127.0.0.1/info.php o http://localhost/info.php (recuerda que 127.0.0.1 = localhost) con el Apache activo deberemos visualizar una página de información de PHP. Si no sale, algo ha fallado, revisa los pasos.



Como has podido observar, para acceder a nuestro servidor local y así poder probar nuestros script y las páginas de nuestra web, siempre accederemos con la dirección 127.0.0.1 o localhost (sin WWW) en el navegador pues esta es la dirección del host local de nuestro ordenador. En general, para visualizar o acceder a cualquier archivo (PHP, HTML, TXT, ZIP, GIF, JPG, etc.) que tengamos en nuestra carpeta de la web, lo haremos de la siguiente forma:

http://localhost/CARPETA/ARCHIVO.EXT

Donde CARPETA es la carpeta (o serie de carpetas) relativas a la raiz en que se encuentra el ARCHIVO.EXT

Por tanto resaltar que no sólo podemos hacer llamadas a script PHP, sino también a páginas HTML, descarga de archivos, imágenes, etc., tan solo poniendo la dirección correcta en el navegador. Es simplemente un servidor. De esta forma, podemos tener nuestra web funcionando en nuestro propio ordenador para construirla desde cero o bien hacer las pruebas que necesitemos sin tener que estar conectados a Internet.
 

Mau85

Nuevo Miembro
Miembro
6 - Instalación de MySQL - Web oficial: http://www.mysql.com/

Vamos a hacer la instalación de una versión 4.0.X, por lo que en este caso buscaremos la versión que corresponda en los downloads para windows. En la fecha de actualización de este manual, la versión utilizada fue la 4.0.23 Y repito que usamos una versión 4.0.X, no una 4.1.X, pues la 4.1.X no funcionará si sigues los pasos de este tutorial.

Existen dos tipos de archivo descargable, en ZIP y en EXE. Yo prefiero el ZIP porque es descomprimir y listo, y luego para actualizar la versión es más sencillo. El instalador EXE lleva un setup muy majo, por defecto se instala en C:\MySQL\ Recomiendo elegir otra ruta de instalación, y por ejemplo lo vamos a hacer en C:\Servidor\MySQL\ para tener el PHP y MySQL en la misma carpeta. Una vez finalizada la instalación, solo hay que llamar al winmysqladmin.exe que estaría en C:\Servidor\MySQL\bin\ y la primera vez que lo ejecutemos nos pide un nombre de usuario y contraseña, que introduciremos sin mayor complicación. Por ejemplo podemos poner el usuario "Pepe" y la contraseña "hola", pero tú ponlo a tu gusto. Ahora al lado del reloj saldrá un semáforo. Si el semáforo se pone en verde, perfecto, si no, algo ha fallado.



Por defecto, MySQL crea un usuario de nombre root y sin contraseña, y éste es el usuario que usaremos en nuestros script o en las aplicaciones que nos lo pidan (foros, PHP Nuke, etc.). Sin embargo, al final de esta guía se expone cómo crear nuestro propio usuario con nuestra propia contraseña, para así evitar usar este usuario que se crea "por defecto" y conseguir un nivel de seguridad mayor. Pero vayamos por partes, pues antes tendremos que instalar el phpMyAdmin, una aplicación que nos simplificará la vida en el manejo de las bases de datos.
 

Mau85

Nuevo Miembro
Miembro
7 Instalación de phpMyAdmin - Web oficial: phpMyAdmin

PhpMyAdmin es una utilidad que nos sirve para inteactuar con una base de datos de forma muy sencilla y desde una interfaz web. Nos sirve por ejemplo para crear bases de datos, tablas, borrar o modificar dados, añadir registros, hacer copias de seguridad, etc. Es una aplicación tan útil que casi todos los hosting con MySQL disponen de ella, por ello se analizará su instalación. Además, vamos a usarlo para crear los usuarios MySQL para así poder utilizar las bases de datos de forma segura. Al ser una aplicación escrita en PHP, necesita de Apache y MySQL para poder funcionar.

Si accedemos a la página oficial, nos encontramos en la sección de downloads con una lista de links, y el que tenemos que elegir es el ZIP de la última versión. En nuestro caso vamos a utilizar la versión 2.6.1 de esta aplicación, que es la versión disponible en la fecha de actualización de este manual.

La instalación es relativamente sencilla: extraer todo el ZIP en la carpeta raíz de nuestra web. OJO: en la carpeta de nuestra web, C:\Servidor\WEB\ y no dentro de la carpeta del PHP o similares. Como pone un nombre extraño a la carpeta, mejor la renombramos a phpmyadmin, de forma que quedaria algo así: C:\Servidor\WEB\phpmyadmin\

Ahora vamos a hacer una pequeña configuración del phpMyAdmin. Para ello debemos editar el archivo config.inc.php y, leyendo de arriba hacia abajo, buscamos la primera aparición de la siguiente línea:

Insertar CODE, HTML o PHP:
 $cfg['PmaAbsoluteUri'] = '';
Debemos darle la ruta absoluta donde tenemos el phpMyAdmin. En nuestro caso sería así:

Insertar CODE, HTML o PHP:
$cfg['PmaAbsoluteUri'] = '[URL="http://localhost/phpmyadmin/%27;"]http://localhost/phpmyadmin/';[/URL]
Recuerda que podemos poner localhost o 127.0.0.1 (a gusto del consumidor). Ahora buscamos si nos aparece algo como esto:

Insertar CODE, HTML o PHP:
$cfg['blowfish_secret'] = '';
Le pondremos una cadena de caracteres cualquiera, que servirá de semilla para la encriptación de contraseñas al usar la autentificación con cookies:

Insertar CODE, HTML o PHP:
$cfg['blowfish_secret'] = 'aquí puedes poner lo que quieras';
Y guardaremos el archivo, pero no lo cerraremos. Puedes probar phpMyAdmin para ver si funciona, ya sabes: http://localhost/phpmyadmin/

Y con esto terminamos de instalar todo lo necesario. Si necesitas aun mas información puedes engresar a la fuente
 
Estado
Cerrado para nuevas respuestas
Thread starter Temas similares Forum Replies Date
J Manuales Webmaster 42
Temas similares
Manual de Instalación SMF
Arriba Pie