Instalación y configuración de PHP
PHP - Wikipedia
PHP is a server-side scripting language designed for web development but also used as a general-purpose programming language. Originally created by Rasmus Lerdorf in 1994, the PHP reference implementation is now produced by The PHP Group. PHP originally stood for Personal Home Page, but it now stands for the ...
¿Qué es PHP? bien explicado
¿Como funciona PHP?
PHP es un lenguaje de script orientado a la web, gratuito y de uso masivo, en la línea de ASP; en estas líneas especificaremos como llevar a cabo su instalación para que los usuarios de la web de nuestro centro puedan crear páginas PHP y ejecutarlas en nuestro servidor web IIS.
Los pasos que llevaremos a cabo para ello serán los siguientes:
Copiaremos el fichero "php-5.0.3-Win32.zip" en la raíz de la unidad "C:\" del disco duro de nuestro "Windows 2003 Server"; tras ello descomprimimos dicho fichero en sobre la propia unidad "C:\" de nuestro servidor, generándose una carpeta de nombre "php-5.0.3-Win32", colgando directamente de la unidad "C:\".
Posteriormente renombramos la carpeta "php-5.0.3-Win32", con el nombre "php", de modo que finalmente en la ruta "C:\php" de nuestro servidor Windows 2003 tengamos todos los ficheros necesarios para poder ejecutar ficheros PHP en nuestro IIS. Para concluir eliminamos el fichero de instalación "php-5.0.3-Win32.zip", de la raíz del disco duro del servidor.
El siguiente paso que debemos seguir para lograr que las páginas "php" sean reconocidas por nuestro IIS es copiar el fichero "php.ini-dist", ubicado en "C:\php", a la carpeta "C:\Windows"; tras copiarlo hemos de renombrar el fichero "php.ini-dist" como "php.ini", de modo que el fichero de inicio de "php" que sea utilizado por nuestro IIS, será "C:\Windows\php.ini".
A continuación editamos el fichero "php.ini" de la carpeta "C:\Windows" con el bloc de notas y modificamos las siguientes entradas:
En la entrada output_buffering = Off cambiamos su valor a output_buffering = 4096
En la entrada allow_call_time_pass_reference = On cambiamos su valor a allow_call_time_pass_reference = Off
En la entrada safe_mode = Off cambiamos su valor a "On", es decir quedaría safe_mode = On
En el apartado correspondiente a la deshabilitación de funciones, disable_functions = introducimos una serie de funciones de modo que dicha entrada quede como disable_functions = chdir,rewinddir,dir,highlight_file,show_source
En la entrada display_errors = On cambiamos su valor a display_errors = Off
En la entrada log_errors = Off cambiamos su valor a log_errors = On
Descomentamos la entrada ;error_log = syslog quitando el punto y coma (";") inicial de la línea, es decir, error_log = syslog
En la entrada variables_order = "EGPCS" quitamos la letra "E" quedando dicha entrada del siguiente modo: variables_order = "GPCS"
En la entrada register_argc_argv = On cambiamos su valor a register_argc_argv = Off
En la entrada magic_quotes_gpc = On cambiamos su valor a magic_quotes_gpc = Off
Descomentamos la entrada ;fastcgi.impersonate = 1; quitando el punto y coma (";") inicial de dicha línea quedando pues fastcgi.impersonate = 1;
En la entrada allow_call_time_pass_reference = On cambiamos su valor a allow_call_time_pass_reference = Off
En la entrada safe_mode = Off cambiamos su valor a "On", es decir quedaría safe_mode = On
En el apartado correspondiente a la deshabilitación de funciones, disable_functions = introducimos una serie de funciones de modo que dicha entrada quede como disable_functions = chdir,rewinddir,dir,highlight_file,show_source
En la entrada display_errors = On cambiamos su valor a display_errors = Off
En la entrada log_errors = Off cambiamos su valor a log_errors = On
Descomentamos la entrada ;error_log = syslog quitando el punto y coma (";") inicial de la línea, es decir, error_log = syslog
En la entrada variables_order = "EGPCS" quitamos la letra "E" quedando dicha entrada del siguiente modo: variables_order = "GPCS"
En la entrada register_argc_argv = On cambiamos su valor a register_argc_argv = Off
En la entrada magic_quotes_gpc = On cambiamos su valor a magic_quotes_gpc = Off
Descomentamos la entrada ;fastcgi.impersonate = 1; quitando el punto y coma (";") inicial de dicha línea quedando pues fastcgi.impersonate = 1;
NOTA: No quitar el punto y coma final de la línea anterior, sólo el inicial.
Descomentamos la entrada ;cgi.force_redirect = 1 quitando el punto y coma (";") inicial, y además cambiamos su valor a 0, es decir, la línea quedaría cgi.force_redirect = 0
En la entrada extension_dir = "./" cambiamos su valor a extension_dir = "C:\php\ext\"
Descomentamos la entrada ;upload_tmp_dir= quitando el punto y coma (";") inicial y además incluimos la ruta "E:\tmp" como ruta de la carpeta donde subir los ficheros al servidor temporalmente, de modo que finalmente dicha entrada quede del siguiente modo: upload_tmp_dir = "E:\tmp"
Descomentamos la entrada ;extension=php_gd2.dll quitando el punto y coma (";") inicial, es decir, extension=php_gd2.dll
Descomentamos la entrada ;extension=php_imap.dll quitando el punto y coma (";") inicial, es decir, extension=php_imap.dll
Descomentamos la entrada ;extension=php_mysql.dll quitando el punto y coma (";") inicial, es decir, extension=php_mysql.dll
Descomentamos la entrada ;extension=php_pdf.dll quitando el punto y coma (";") inicial, es decir, extension=php_pdf.dll
En la entrada SMTP = localhost cambiamos su valor a SMTP = servidor.micentro.edu
Descomentamos la entrada ;sendmail_from = me@example.com quitando el punto y coma (";") inicial, y cambiamos su valor a la dirección de correo del administrador, es decir, dicha entrada quedaría del siguiente modo: sendmail_from = administrador@micentro.edu
Descomentamos la entrada ;session.save_path = "/tmp" quitando el punto y coma (";") inicial, y cambiamos su valor a la ruta "E:\tmp", es decir, quedaría dicha entrada como sigue: session.save_path = "E:\tmp"
En la entrada session.bug_compat_42 = 1 cambiamos su valor a session.bug_compat_42 = 0
En la entrada session.hash_bits_per_character = 4 cambiamos su valor a session.hash_bits_per_character = 5
Descomentamos la entrada ;cgi.force_redirect = 1 quitando el punto y coma (";") inicial, y además cambiamos su valor a 0, es decir, la línea quedaría cgi.force_redirect = 0
En la entrada extension_dir = "./" cambiamos su valor a extension_dir = "C:\php\ext\"
Descomentamos la entrada ;upload_tmp_dir= quitando el punto y coma (";") inicial y además incluimos la ruta "E:\tmp" como ruta de la carpeta donde subir los ficheros al servidor temporalmente, de modo que finalmente dicha entrada quede del siguiente modo: upload_tmp_dir = "E:\tmp"
Descomentamos la entrada ;extension=php_gd2.dll quitando el punto y coma (";") inicial, es decir, extension=php_gd2.dll
Descomentamos la entrada ;extension=php_imap.dll quitando el punto y coma (";") inicial, es decir, extension=php_imap.dll
Descomentamos la entrada ;extension=php_mysql.dll quitando el punto y coma (";") inicial, es decir, extension=php_mysql.dll
Descomentamos la entrada ;extension=php_pdf.dll quitando el punto y coma (";") inicial, es decir, extension=php_pdf.dll
En la entrada SMTP = localhost cambiamos su valor a SMTP = servidor.micentro.edu
Descomentamos la entrada ;sendmail_from = me@example.com quitando el punto y coma (";") inicial, y cambiamos su valor a la dirección de correo del administrador, es decir, dicha entrada quedaría del siguiente modo: sendmail_from = administrador@micentro.edu
Descomentamos la entrada ;session.save_path = "/tmp" quitando el punto y coma (";") inicial, y cambiamos su valor a la ruta "E:\tmp", es decir, quedaría dicha entrada como sigue: session.save_path = "E:\tmp"
En la entrada session.bug_compat_42 = 1 cambiamos su valor a session.bug_compat_42 = 0
En la entrada session.hash_bits_per_character = 4 cambiamos su valor a session.hash_bits_per_character = 5
Y para concluir salvaremos los cambios realizados al fichero "php.ini"; podríamos para mayor seguridad, haber modificado los valores de otros parámetros, como por ejemplo "expose_php" en el fichero "php.ini", pero de momento dejaremos dicho fichero con los valores que hemos especificado anteriormente.
NOTA: Si hubiera algún problema en la configuración del fichero "php.ini", en el enlace "php.ini" podemos descargar dicho fichero con las configuraciones anteriores incluidas.
A continuación crearemos en la unidad "E" del disco duro de nuestro servidor una carpeta de nombre "tmp", donde se almacenarán las cookies, los ficheros temporales que genere php, etc.; procederemos pues a llevar a cabo dicha operación. Posteriormente nos ubicamos sobre la carpeta recién creada, pulsamos sobre ella con el botón derecho del ratón y seleccionamos la opción "Propiedades" y una vez allí pulsamos sobre la pestaña "Seguridad", y luego sobre el botón "Agregar", para añadir al grupo "Todos", con todos los permisos sobre dicha carpeta, excepto el de "Control Total".
Tras ello debemos copiar el fichero "libmysql.dll" de "C:\PHP" a "C:\Windows\System32" y también el fichero "php_pdf.dll" disponible en este enlace a la carpeta "C:\PHP\ext".
Una vez completado el proceso de configuración del fichero "php.ini", y concluida la creación de la infraestructura necesaria en el servidor para correr páginas PHP, el siguiente paso consiste en indicar a los sitios web de nuestro IIS, que pueden ejecutar páginas dinámicas php; para ello nos situaremos sobre cada uno de los sitios web creados (recordemos "Sitio Web de MiCentro" y "Sitio Web para los Departamentos") pulsaremos con el botón derecho del ratón, seleccionando la opción "Propiedades", y accederemos a la pestaña "Directorio particular", donde pulsaremos sobre el botón "Configuración".
En la ventana que se muestra a continuación, pulsamos sobre el botón "Agregar".
Tecleamos en la caja de texto "Ejecutable" el fichero "C:\php\php5isapi.dll" (para ejecutar PHP como módulo ISAPI en vez de en modo CGI) de nuestro servidor Windows 2003, e indicamos en la caja de texto "Extensión" el valor "php", para posteriormente ir cerrando ventanas pulsando sobre los respectivos botones "Aceptar".
Para completar la configuración, indicaremos que deseamos que los ficheros nominados como "index.php" sean contemplados como documentos predeterminados; para ello nos ubicaremos en la pestaña "Documentos" de nuestro sitio web y pulsaremos sobre el botón "Agregar" incluyendo los ficheros de nombre "index.php" como uno de los documentos predeterminados, tal y como hicimos en su momento con los ficheros "index.htm" e "index.html".
Así mismo colocaremos el orden de ejecución de los documentos predeterminados como deseemos.
Hemos de recordar que debemos realizar esta operación en los dos sitios web que hemos definido en nuestro servidor IIS, si es que deseamos que ambos soporten "php".
NOTA: Al final del cierre de dichas pantallas, se mostrará una pantalla preguntando si los nodos secundarios deben tomar también este nuevo valor "index.php" como fichero a tomar por defecto; pulsaremos sobre el botón "Seleccionar Todos" y luego sobre el botón "Aceptar".
Además de todo ello hemos de indicar que se admite en nuestro IIS la ejecución de páginas con extensión "php"; para ello nos situamos sobre la entrada "Extensiones de servicio web" de nuestro IIS, y una vez allí pulsamos sobre el hipervínculo "Agregar una nueva extensión de servicio web..." y en la nueva ventana mostrada, especificaremos en la caja de texto "Nombre de la extensión" el valor "php", en "Archivos necesarios" tecleamos "C:\php\php5isapi.dll" y finalmente activamos la casilla "Establecer el estado de la extensión a Permitido", tal y como vemos en la siguiente imagen:
Tras ello observaremos que el apartado correspondiente a las "Extensiones de servicio web" disponemos de una nueva entrada permitida correspondiente a PHP.
No hay comentarios:
Publicar un comentario