Instalar y configurar PHP en modo local en Windows y Linux

Ahora que ya sabemos lo que es PHP, querremos empezar a utilizarlo, aunque todavía no sepamos muy bien cómo. Para ello, el siguiente paso es instalarlo en nuestro PC, en modo local, para así poder hacer todas las pruebas necesarias en un entorno de desarrollo, sin miedo a ‘romper’ nada. Vamos a ello.

PHP necesita de un servidor web para poder trabajar. La elección idónea es Apache, probablemente el servidor open source más utilizado en el mundo, si no me equivoco. Disponemos de varias formas de instalar PHP con el servidor Apache, así como instalar cada tecnología por separado en los sistemas operativos más utilizados: WindowsLinux, Mac OS X y Solaris.

Yo lo he instalado tanto en Windows como en Linux, en concreto en la distro Ubuntu. Esta última elección es mi preferida, ya que PHP y el servidor Apache están especialmente concebidos para trabajar en entornos open source. Lo de Ubuntu es simplemente porque es la distro Linux que más me gusta, además de ser un sistema operativo muy robusto y en constante desarrollo y mejora. Pero eso es harina de otro costal. Volvamos al tema en cuestión: instalar todo el entorno necesario para trabajar con PHP en nuestro PC, convirtiéndolo así en un servidor ‘de pruebas’ para nuestro aprendizaje.

En mi opinión, la mejor opción es instalar XAMPP de Apache Friends. XAMPP se comercializa liberado bajo licencia GNU, es decir, es software libre (open source). Además, Xampp es multiplataforma y gratuito. Veamos como lo describe Apache Friends:

XAMPP es una forma fácil de instalar la distribución Apache que contiene MySQL, PHP y Perl. XAMPP es realmente simple de instalar y usar – basta descargarlo, extraerlo y comienzar. En este momento hay cuatro versiones de XAMPP: XAMPP para Linux, XAMPP para Windows, XAMPP para Mac OS X y XAMPP para Solaris.


Instalación en Windows
Los pasos para instalar XAMPP en Windows son extremadamente simples:

– Descargar el paquete de instalación (.zip para Windows) e iniciar la instalación: http://www.apachefriends.org/en/xampp-windows.html. Es muy recomendable instalarlo en el directorio raíz de nuestro PC, normalmente en C:/ La instalación se encargará de crear la carpeta xampp, e la que se alojarán todos los archivos de nuestro servidor, así como los proyectos web que queramos que funcionen bajo el mismo.

– Una vez instalado Xampp, pondremos en marcha el servicio. Para comprobar que todo funciona perfectamente pulsaremos sobre el botón “Start” del módulo Apache e, inmediatamente, nos avisará mediante el mensaje “Running” de que el módulo se encuentra activo. Lo mismo haremos con el módulo de MySql, el gestor de bases de datos (de MySQL hablaremos más adelante).

Para poner en marcha Xampp ejecutamos el fichero C:/xampp/xampp-control.exe. Veremos lo siguiente:

Panel de control de Xampp para Windows
Panel de control de Xampp para Windows. En mi caso, una instalación portable

Dispondremos de iun acceso directo al panel de control en la barra de tareas de Windows.

La raíz del servidor Apache se encuentra en el directorio C:xampphtdocs. Todos los ficheros que se encuentren dentro de este directorio serán procesados por Apache cuando accedamos mediante la URL especial http://localhost o http://127.0.0.1, nuestro propio servidor! SI todo ha ido bien (seguro), verás esta página:

Página de inicio de Xampp
Página de inicio de Xampp

Es conveniente seguir las instrucciones básicas de seguridad. En principio, el usuario es root y la contraseña está vacía. Al ser un servidor local, de desarrollo, en principio no es demasiado grave, pero conviene tomar las medidas básicas de seguridad para evitar ataques desde el ‘exterior’.

Puedes ver todo el proceso de instalación (en inglés) en la siguiente dirección: http://www.apachefriends.org/en/xampp-windows.html#522. Un apunte interesante: también existe una versión de Xampp portable.


Instalación del entorno en Linux, distribución Ubuntu
Como os he dicho, es mi preferida. Existe un servidor web también de código libre que nos permite utilizar todo el ‘paquete’ desde una misma instalación. El entorno se denomina XAMPP, acrónimo de Apache, MySQL, PHP y Perl. La X inicial viene del sistema operativo, que puede ser cualquiera de los tres más utilizados que antes hemos comentado.  Para la instalación en Ubuntu utilizaremos LAMPP (Linux, Apache, PHP y Perl). Sólo necesitaremos loguearnos como superusuario en una sesión de la consola y escribir lo siguiente, tras loguearte como super usuario (sudo su):

root@ubuntuPC:/home/TU_USUARIO# apt-get install apache2 php5 libapache2-mod-php5

Descargará todos los paquetes necesarios para disponer de  el servidor Apache en nuestro PC  y PHP. Ahora instalaremos MySQL, el gestor de bases de datos:

root@UBUNTU:/home/TU_USUARIO# apt-get install mysql-server mysql-client php5-mysql

Con ello, ya disponemos de nuestro entorno LAMPP, bueno, en este caso LAMP (Linux, Apache, MySQL y PHP) , ya que Perl (la última P del acrónimo) no vamos a utilizarlo en principio. En este caso, la versión de PHP que hemos instalado es la 5. LA instalación de XAMPP para Linux se realiza en la carpeta /opt/lampp. Para iniciar el servicio, simplemente teclea en la consola: /opt/lampp/lampp start y accede a la página principal de Xampp., bueno, de LAMPP a través de la ruta local: http://localhost o http://127.0.01. Te aparecerá la página con el mensaje:

It works!

Te dejo todo el proceso de instalción de la página oficial de Apache Friends (recuerda, en inglés): http://www.apachefriends.org/en/xampp-linux.html#377

Bien, continuaremos…

Enlaces recomendados:
Manual oficial de instalación de PHP
Apache + PHP + MySql + PhpMyAdmin como módulo de Apache
Cómo instalar PHP en Windows
Instalación y configuración de PHP
Instalación de PHP en nuestro servidor
WebTaller – Aprender PHP – Instalación php en IIS

PHP: un comienzo, la definición

Y de paso, ¿qué podemos hacer con esta tecnología open source?

Logo oficial de PHP. Fuente: www.php.netPor algún sitio se debe comenzar, y qué mejor que por el principio: empezar a aprender desde el inicio, desde el desconocimiento y hacia el conocimiento, poco a poco, gradualmente, paso a paso. Esa es mi pequeña declaración de intenciones.

Y para comenzar, ¿qué mejor que una descripción de la tecnología que quiero tratar, PHP? Bien, veamos algunas definiciones primero. En la Red disponemos de todo lo necesario para iniciar esta pequeña aventura, hacia el conocimiento en mi caso y  en el vuestro, si partís del mismo sitio que yo. Vamos allá:

PHP – Wikipedia, la enciclopedia libre
Fuente: http://es.wikipedia.org/wiki/PHP
Wikipedia: PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. PHP es un acrónimo recursivo que significa PHP Hypertext Pre-processor (inicialmente PHP Tools, o, Personal Home Page Tools)…

¿Qué es PHP, cómo surgió y para qué se utiliza?
Fuente: http://www.nociondigital.com/webmasters/php-tutorial-que-es-php-como-surgio-y-para-que-se-utiliza-detalle-191.html
PHP es un lenguaje interpretado (script), pensado fundamentalmente para añadir funcionalidad a los servidores de páginas web. . .

Hay muchas definiciones más, pero bastará con estas por ahora. Una rápida búsqueda en Internet sobre PHP y veréis a lo que me refiero. Pero si tuviera que dar mi definición, diría esto: PHP es un lenguaje de script (guión) de código libre y multiplataforma que está especialmente indicado para crear aplicaciones web, aunque puede utilizarse para otros ‘menesteres’. Se ejecuta en el lado del servidor. Algunos ejemplos de su uso, entre mucho más: el CMS WordPress y la propia Wikipedia están realizados bajo PHP. Algo debe tener esta tecnología open source ¿no?…

PHP está pensado para que la curva de aprendizaje sea corta, es decir, podamos empezar a utilizarlo con relativa rapidez, aunque eso no implica que no sea muy versátil y disponga de un número muy considerable de funciones. Actualmente es uno de los lenguajes preferidos para la creación de proyectos web. Se lleva ‘a la perfección’ con MySQL.  el sistema también open source gestor de bases de datos que se ejecuta en el (también) popular servidor web Apache. De ambos tendremos que hablar también.

PHP está mantenido por PHP Group y su licencia de software libre.

No voy a escribir el típico ejemplo de Hola mundo! En su lugar, y aunque todavía no halla hablado de la sintáxis de PHP, muestro un ejemplo con dos páginas: una en HTML y la otra en PHP. La primera, enviar_nombre.html, dispone de un formulario con un campo nombre y un botón Enviar. Al pulsarlo, la acción del formulario lo enviará a una página PHP (recoger_nombre.php) en la que recogemos el valor de la variable y la mostramos. Aquí va el ejemplo:

Página en HTML denominada enviar_nombre.html:

<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
<title> Enviar nombre </title>
</head>
<body>
<p>
Este fragmento de código es sólo HTML<br />
Escribe aquí tu Nombre:
</p>
<form action=”recoger_nombre.php” method=”post”>
<p>
<input type=”text” name=”nombre” /> <input type=”submit” value=”Enviar” />
</p>
</form>
</body>
</html>

Y esta es la página en PHP (.php) denominada recoger_nombre.php que recoge el valor del campo nombre del formulario de la página enviar_nombre.html:

<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
<title> Recuperar nombre </title>
</head>
<body>
<p>En esta página php recogemos la variable enviada desde el formulario de la página enviar_nombre.html:</p><br />
<p>Gracias por decírmelo. Tu nombre es: <b><?php echo $_POST[‘nombre’]; ?></b></p>
</body>
</html>

Podéis probarlo desde aquí: enviar_nombre.html

Como véis, el código de PHP se embebe perfectamente dentro del de HTML. Se diferencia por estar entre las directivas de apertura<? y de cierre ?>, mejor si la de apertura muestra o declara el lenguaje de script que vamos a utilizar, quedando así: apertura <?php y la misma etiqueta de cierre anterior: ?>. Ya hablaremos más al respecto.

En el próximo post hablaré de la instalación de PHP dentro de un entorno de desarrollo, es decir, en un servidor local, para que hagamos todas las pruebas que queramos sin miedo a ‘romper nada’.

Lectura recomendada:
Conceptos básicos de PHP (PHP.net)

¡Hola, Aprendiendo PHP!

Bienvenido a WordPress. Esta es tu primera entrada. Edítala o bórrala, ¡y comienza a publicar! Bueno, lo haré un poquito más adelante ¿OK?