Sie sind auf Seite 1von 15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

Configuracin bsica de Apache.


Autor: Joel Barrios Dueas
Correo electrnico: darkshram en gmail punto com
Sitio de Red: http://www.alcancelibre.org/
Jabber ID: darkshram@jabber.org
Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1
1999-2016 Joel Barrios Dueas. Usted es libre de copiar, distribuir y comunicar pblicamente la obra y hacer obras derivadas bajo las condiciones
siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales (incluyendo su publicacin, a travs de
cualquier medio, por entidades con fines de lucro). c) Si altera o transforma esta obra o genera una obra derivada, slo puede distribuir la obra
generada bajo una licencia idntica a sta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los trminos de la licencia de esta obra. Alguna de
estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legtimos u otras
limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La informacin contenida en este documento y los derivados de ste
se proporcionan tal cual son y los autores no asumirn responsabilidad alguna si el usuario o lector hace mal uso de stos.

Introduccin.
Acerca del protocolo HTTP.
HTTP (Hypertext Transfer Protocol o Protocolo de Trasferencia de Hipertexto) es el mtodo
utilizado para transferir o transportar informacin a travs de Internet y (WWW, World Wide Web).
Su propsito original fue el proveer una forma de publicar y recuperar documentos en formato
HTML.
El desarrollo del protocolo fue coordinado por World Wide Web Consortium y la IETF (Internet
Engineering Task Force o Fuerza de Trabajo en Ingeniera de Internet), culminando con la
publicacin de varios RFC (Request For Comments), de entre los que destaca el RFC 2616, mismo
que define la versin 1.1 del protocolo, que es el utilizado hoy en da.
HTTP es un protocolo de solicitud y respuesta a travs de TCP, entre agentes de usuario
(Navegadores, motores de ndice y otras herramientas) y servidores, regularmente utilizando el
puerto 80. Entre la comunicacin entre stos puede intervenir otros tipos de implementaciones,
como seran servidores Intermediarios (Proxies), puertas de enlace y tneles.
URL: http://tools.ietf.org/html/rfc2616

Acerca de Apache.
Apache es un servidor HTTP de cdigo fuente abierto y licenciamiento libre que funciona en Linux,
sistemas operativos derivados de Unix, Windows, Novell Netware y otras plataformas. Ha
desempeado un papel muy importante en el crecimiento de Internet y continua siendo el servidor
HTTP ms utilizado, siendo adems el servidor de facto contra el cual se realizan las pruebas
comparativas y de desempeo para otros productos competidores. Es desarrollado y mantenido por
una comunidad de desarrolladores auspiciada por Apache Software Foundation .
URL: http://www.apache.org/

Equipamiento lgico necesario.


En CentOS y Red Hat Enterprise Linux.
Ejecute lo siguiente:
yumyinstallhttpd

Ejecute lo siguiente para incluir soporte para SSL/TLS :


http://www.alcancelibre.org/staticpages/index.php/comoapache/print

1/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

yumyinstallmod_ssl

Ejecute lo siguiente para incluir soporte para PHP y sus mdulos para MySQL y PostgreSQL :
yumyinstallphpphpmysqlphppgsql

Ejecute lo siguiente para incluir soporte para Perl y Python:


yumyinstallmod_perlmod_wsgi

Nota.
En CentOS 6 y Red Hat Enterprise Linux 6, el soporte para Python se incluye con el paquete mod_wsgi. En CentOS 5
y Red Hat Enterprise Linux 5, el soporte para Python se incluye con el paquete mod_python.

yumyinstallmod_python

Para poder realizar pruebas desde el mismo anfitrin local puede utilizar cualquier navegador
Firefox, Elinks, Lynx u Opera. A fin de poder prescindir del uso del modo grfico y poder trabajar
desde una terminal de texto, sugerimos instalar y utilizar el navegador Lynx.
yumyinstalllynx

Modificaciones necesarias en el muro cortafuegos.


Es necesario abrir los puertos 80/TCP (http) y 443/TCP (https).

Utilizando system-config-firewall.
Ejecute lo siguiente:
systemconfigfirewalltui

Habilite las casillas WWW (HTTP) y WWW Seguro (HTTPS) y aplique los cambios.

http://www.alcancelibre.org/staticpages/index.php/comoapache/print

2/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

Habilitando HTTP y HTTPS en system-config-firewall-tui.


O bien utilice la herramienta grfica desde el escritorio.

Habilitando HTTP y HTTPS en system-config-firewall.

Servicio iptables.
Ejecute lo siguiente:
iptablesAINPUTmstatestateNEWmtcpptcpdport80jACCEPTiptablesAINPUTm
statestateNEWmtcpptcpdport443jACCEPT

Guarde los cambios ejecutando lo siguiente:


serviceiptablessave

http://www.alcancelibre.org/staticpages/index.php/comoapache/print

3/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

O bien edite el archivo /etc/sysconfig/iptables :


vi/etc/sysconfig/iptables

Aada el siguiente contenido:


AINPUTmstatestateNEWmtcpptcpdport80jACCEPTAINPUTmstatestateNEW
mtcpptcpdport443jACCEPT

Reinicie el servicio iptables :


serviceiptablesrestart

Shorewall.
Edite el archivo /etc/shorewall/rules :
vi/etc/shorewall/rules

Aada el siguiente contenido:


#ACTIONSOURCEDESTPROTODESTSOURCE
#PORTPORT(S)1
ACCEPTallfwtcp80,443

Reinicie el servicio:
serviceshorewallrestart

Iniciar servicio y aadirlo al arranque del sistema.


Ejecute lo siguiente para activar el servicio en todos lo niveles de ejecucin:
chkconfighttpdon

Ejecute lo siguiente para iniciar el servicio:


servicehttpdstart

Ejecute lo siguiente para reiniciar el servicio e interrumpiendo todas las conexiones establecidas en
ese momento:
http://www.alcancelibre.org/staticpages/index.php/comoapache/print

4/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

servicehttpdrestart

Ejecute lo siguiente para cargar los cambios en la configuracin sin interrumpir el servicio y
manteniendo activas todas las conexiones establecidas:
servicehttpdreload

Ejecute lo siguiente para detener el servicio:


servicehttpdstop

SELinux y Apache.
En CentOS y Red Hat Enterprise Linux , de modo predeterminado SELinux viene activo en modo
obligatorio (enforcing). ste aade seguridad y proteccin adicional. Algunas opciones impedirn
utilizar ciertas funciones, como directorios virtuales fuera del directorio /var/www , directorios
~/public_html , el envo de correo electrnico desde aplicaciones basadas sobre HTTP, etc.
Desactivar por completo SELinux en un sistema operativo para servidores en lugar de intentar
aprender a utilizarlo puede considerarse algo absolutamente irresponsable y negligente e
invariablemente denotar una completa ignorancia de parte del administrador de sistemas respecto
de aspectos de seguridad fundamentales en CentOS y Red Hat Enterprise Linux.

Polticas ms utilizadas.
Ejecute lo siguiente para permitir el envo de correo electrnico a travs de Apache:
setseboolPhttpd_can_sendmail1

Ejecute lo siguiente para permitir que Apache pueda leer contenidos localizados en los directorios de
inicio de los usuarios locales:
setseboolPhttpd_read_user_content1

Nota.
Estas ltimas dos polticas son indispensables para el funcionamiento de cualquier cliente de correo electrnico basado
sobre HTTP (Webmails).

Ejecute lo siguiente para habilitar el uso de los directorios ~/public_html de los usuarios regulares o
anfitriones virtuales asignados a usuarios regulares:
setseboolPhttpd_enable_homedirs1

Ejecute lo siguiente para permitir administrar a travs de FTP o FTPS cualquier directorio
gestionado por Apache o bien permitir a Apache funcionar como un servidor FTP escuchando
http://www.alcancelibre.org/staticpages/index.php/comoapache/print

5/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

peticiones a travs del puerto de FTP:


setseboolPhttpd_enable_ftp_server1

Ejecute lo siguiente slo para desactivar la ejecucin de guiones CGI:


setseboolPhttpd_enable_cgi0

Ejecute lo siguiente para permitir las inclusiones del lado del servidor (SSI, Server Side Includes):
setseboolPhttpd_ssi_exec1

Ejecute lo siguiente para permitir conexiones hacia bases de datos localizada en otros servidores:
setseboolPhttpd_can_network_connect_db1

Ejecute lo siguiente para permitir conexiones de red hacia otros servicios como por ejemplo sieve
en Round Cube Mail locales o remotos:
setseboolPhttpd_can_network_connect1

Ejecute lo siguiente para desactivar la ejecucin de PHP y otros lenguajes de programacin:


setseboolPhttpd_builtin_scripting0

Ejecute lo siguiente para permitir conexiones puertos de OpenStack:


setseboolPhttpd_use_openstack1

Ejecute lo siguiente para consultar todas polticas disponibles que existen para Apache:
getseboola|grephttpd

Ejecute lo siguiente para consultar estas mismas polticas junto con una breve descripcin:
semanagebooleanl|grephttpd

Contextos ms utilizados.
Cualquier contenido que sea puesto dentro de /var/www automticamente heredar el contexto
httpd_sys_content_t .
http://www.alcancelibre.org/staticpages/index.php/comoapache/print

6/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

Para definir que un directorio fuera de /var/www como por ejemplo


/srv/www/dominio/public_html pueda ser utilizado, se debe asignar a ste el contexto
httpd_sys_content_t a travs de chcon, como se muestra en el siguiente ejemplo:
chconthttpd_sys_content_t/srv/www/dominio/public_html

Cualquier contenido que sea puesto dentro de /var/www/cgi-bin automticamente heredar el


contexto httpd_sys_script_exec_t .
El siguiente ejemplo define se permita utilizar un directorio distinto a /var/www/cgi-bin para
ejecutar guiones CGI:
chconthttpd_sys_script_exec_t/srv/www/dominio/cgibin

Ejecute lo siguiente para definir que un archivo hipottico /srv/www/dominio/public_html/leer.php


pueda ser utilizado con permisos de slo lectura de datos estando localizado fuera del directorio
/var/www :
chconthttpd_sys_script_ro_t/srv/www/dominio/public_html/leer.php

Ejecute lo siguiente para definir que un archivo hipottico


/srv/www/dominio/public_html/escribir.php pueda ser utilizado con permisos de lectura y
escritura de datos estando localizado fuera del directorio /var/www :
chconthttpd_sys_script_rw_t/srv/www/dominio/public_html/escribir.php

Este contexto es requerido para archivos de configuracin y directorios de cache, complementos,


datos, extensiones, mdulos, plantillas, temas o temporales de aplicaciones como Joomla,
Wordpress, Moodle, vTigerCRM, Group-Office, etc. cuando stos utilizan componentes fuera de
/var/www y se requieren permisos de lectura y escritura.
Ejecute semanage con fcontext como argumento, la opcin -a, la opcin -t con httpd_sys_content_t
como argumento y el directorio o archivo de destino como ltimo argumento para establecer este
contexto como el predeterminado para ste:
semanagefcontextathttpd_sys_rw_content_t\
/srv/www/dominio/public_html/leer.php

Lo anterior permitir establecer los contextos establecidos como los predeterminados para cada
directorio o archivo definido. Es decir se restaurarn estos mimos contextos al ejecutar restorecon
sobre estos archivos o directorios. Puede aplicarse tambin con cualquiera de los otros contextos
descritos arriba.

Procedimientos.
Archivos de configuracin.
Cualquier ajuste que se requiera realizar, ya sea para configurar anfitriones virtuales, u otra
funcionalidad adicional, se puede realizar sin tocar el archivo principal de configuracin
(/etc/httpd/conf/httpd.conf ), utilizando cualquier archivo con extensin *.conf dentro del
directorio /etc/httpd/conf.d/ .
http://www.alcancelibre.org/staticpages/index.php/comoapache/print

7/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

Ocultar la versin de Apache.


De modo predeterminado Apache mostrar siempre la versin de ste en todas las pginas de error,
de ndices e informativas. Una excelente medida de seguridad consiste en ocultar la versin de
Apache utilizada. Mientras menos informacin se muestre menor ser el inters de un atacante
potencial.
Utilice el editor de texto y genere un nuevo archivo denominado
/etc/httpd/conf.d/serversignature.conf :
vi/etc/httpd/conf.d/serversignature.conf

Aada el siguiente contenido:


ServerSignatureOff
ServerTokensProd

Guarde los cambios y salga del editor de texto.


Recargue el servicio para que surtan efecto los cambios hechos a la configuracin:
servicehttpdreload

Directorios virtuales.
El siguiente ejemplo aadir un alias para el directorio /srv/www/ejemplo/ haciendo se muestre
como http://127.0.0.1/ejemplo/ .
Genere primero el directorio /srv/www :
mkdirp/srv/www

Cambie los contextos de SELinux para /srv/www ejecutando chcon con la opcin -t con
httpd_sys_content_t como argumento:
chconthttpd_sys_content_t/srv/www

Ejecute lo siguiente para hacer que este contexto sea en lo sucesivo el predeterminado de este
directorio:
semanagefcontextathttpd_sys_content_t/srv/www

Ejecute lo siguiente para crear el directorio /srv/www/ejemplo :


mkdirp/srv/www/ejemplo

http://www.alcancelibre.org/staticpages/index.php/comoapache/print

8/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

Verifique que ste hered los mismos contextos de SELinux establecidos para /srv/www :
lsZ/srv/www

Lo anterior debe devolver una salida similar a la siguiente:


drwxrxrx.rootrootunconfined_u:object_r:httpd_sys_content_t:s0ejemplo

Utilice vi o cualquier otro editor de texto para crear el archivo


/etc/httpd/conf.d/ejemplos.conf :
vi/etc/httpd/conf.d/ejemplos.conf

Aada el siguiente contenido:


Alias/ejemplo/srv/www/ejemplo

Guarde los cambios y salga del editor de texto.


Recargue el servicio para que surtan efecto los cambios hechos a la configuracin:
servicehttpdreload

Asumiendo que realizar la prueba desde el mismo anfitrin local, visualice este nuevo directorio
virtual con cualquier navegador a travs de http://127.0.0.1/ejemplo/. Se mostrar que el directorio
existe, pero el acceso a ste se encuentra denegado.
Realice las comprobaciones desde el anfitrin local utilizando el navegador Lynx.
lynxhttp://127.0.0.1/ejemplo/

Lo anterior deber mostrar un error 403 (acceso denegado), pues el directorio carece de un archivo
ndice. Para poder acceder deber haber un documento ndice en el interior (index.html, index.php,
etc) o bien que dicho directorio sea configurado para mostrar el contenido.
Edite de nuevo el archivo /etc/httpd/conf.d/ejemplos.conf :
vi/etc/httpd/conf.d/ejemplos.conf

Utilice el siguiente contenido si utiliza Apache 2.2:

http://www.alcancelibre.org/staticpages/index.php/comoapache/print

9/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

Alias/ejemplo/srv/www/ejemplo
<Directory"/srv/www/ejemplo">
OptionsIndexes
</Directory>

Utilice el siguiente contenido si utiliza Apache 2.4:


Alias/ejemplo/srv/www/ejemplo
<Directory"/srv/www/ejemplo">
OptionsIndexes
Requirelocal
Requireallgranted
</Directory>

La opcin Indexes indica que se deber mostrar el ndice de contenido del directorio en ausencia de
un archivo index.html. En Apache 2.4 se deniega el acceso a todos los directorios salvo que se
indique lo contrario, razn por la cual se utiliza Require all granted .
Recargue el servicio para que surtan efecto los cambios hechos a la configuracin:
servicehttpdreload

Asumiendo que realizar la prueba desde el mismo anfitrin local, acceda hacia
http://127.0.0.1/ejemplo/ con cualquier navegador y visualice el resultado.
Si se requiere que este directorio tenga an mayor funcionalidad, se pueden aadir ms opciones,
como por ejemplo AllowOve rride, Includes y SymLinksIfOwnerMatch , como se muestra en el
siguiente ejemplo para Apache 2.2:
Alias/ejemplo/srv/www/ejemplo
<Directory"/srv/www/ejemplo">
OptionsIndexesIncludesSymLinksIfOwnerMatch
AllowOverrideall
</Directory>

Utilice el siguiente contenido si utiliza Apache 2.4:


Alias/ejemplo/srv/www/ejemplo
<Directory"/srv/www/ejemplo">
OptionsIndexesIncludesSymLinksIfOwnerMatch
AllowOverrideall
Requirelocal
Requireallgranted
</Directory>

En el ejemplo anterior:
La opcin SymLinksIfOwnerMatch habilita el uso de enlaces simblicos dentro
del directorio slo si los destinos de stos pertenecen al mismo usuario. Slo
utilice sta si necesita acceder a contenidos fuera del directorio a utilizar.
http://www.alcancelibre.org/staticpages/index.php/comoapache/print

10/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

La opcin Includes especifica que se permite la utilizacin de los SSI (Server


Side Includes). Slo utilice sta si as lo requiere la aplicacin o programa
utilizado dentro este directorio.
La opcin AllowOve rride, con el valor all posibilita utilizar archivos .htaccess ,
los cuales a su vez permiten aplicar opciones de directorio al vuelo, sin
necesidad de modificar otros archivos de configuracin.
Recargue el servicio para que surtan efecto los cambios hechos a la configuracin:
servicehttpdreload

Asumiendo que realizar la prueba desde el mismo anfitrin local, acceda hacia
http://127.0.0.1/ejemplo/ con cualquier navegador y visualice el resultado.
Realice las comprobaciones desde el anfitrin local utilizando el navegador Lynx.
lynxhttp://127.0.0.1/ejemplo/

Limitar el acceso a directorios por direccin IP.


Edite de nuevo el archivo /etc/httpd/conf.d/ejemplos.conf :
vi/etc/httpd/conf.d/ejemplos.conf

Si utiliza Apache 2.2 , defina algo similar a lo siguiente para limitar el acceso de un directorio que
est disponible slo hacia ciertas direcciones IP o segmentos de red:
Alias/ejemplo/srv/www/ejemplo
<Directory"/srv/www/ejemplo">
Orderdeny,allow
Denyfromall
Allowfrom127.0.0.0/8192.168.70.0/25
OptionsIndexes
</Directory>

Si utiliza Apache 2.4 , la sintaxis cambia por una ms simple:


Alias/ejemplo/srv/www/ejemplo
<Directory"/srv/www/ejemplo">
Requirelocal
Requireip192.168.70.0/25
OptionsIndexes
</Directory>

El ejemplo anterior establece que el orden de acceso, donde primero se aplicarn las reglas de
denegacin y luego las que permitirn el acceso y que se denegar el acceso a todo el mundo,
permitiendo el acceso slo desde 127.0.0.0/8 y 192.168.70.0/25 .
Recargue el servicio para que surtan efecto los cambios hechos a la configuracin:
http://www.alcancelibre.org/staticpages/index.php/comoapache/print

11/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

servicehttpdreload

Asumiendo que realizar la prueba desde el mismo anfitrin local, acceda hacia
http://127.0.0.1/ejemplo/ con cualquier navegador y visualice el resultado.
Realice las comprobaciones desde el anfitrin local utilizando el navegador Lynx.
lynxhttp://127.0.0.1/ejemplo/

En Apache 2.2 la poltica predeterminada es permitir el acceso a todo el mundo. Comente o elimine
todas las lneas con directivas Allow, Deny y Order para tal fin:
Alias/ejemplo/srv/www/ejemplo
<Directory"/srv/www/ejemplo">
#Orderdeny,allow
#Denyfromall
#Allowfrom127.0.0.0/8192.168.70.0/25
OptionsIndexes
</Directory>

En Apache 2.4 la poltica predeterminada es lo contrario, es decir denegar el acceso a todo el


mundo. Para permitir el acceso a todo el mundo al directorio descrito en el ejemplo, se requiere
definir lo siguiente:
Alias/ejemplo/srv/www/ejemplo
<Directory"/srv/www/ejemplo">
Requirelocal
Requireallgranted
OptionsIndexes
</Directory>

Limitar el acceso por usuario y contrasea.


La autenticacin para directorios contra un archivo que incluya nombres de usuario y contraseas
que tambin puede combinarse con el acceso por direccin IP se realiza utilizando la siguiente
sintaxis:
AuthName"Mensajedebienvenidasinacentosnitildes"
AuthTypeBasic
Requirevaliduser
AuthUserFile/cualquier/archivo/de/contraseas

Lo anterior puede ser incluido en la configuracin existente para cualquier directorio o bien en
archivo .htaccess .
Genere el directorio /srv/www/privado/ ejecutando lo siguiente:
mkdirp/srv/www/privado

http://www.alcancelibre.org/staticpages/index.php/comoapache/print

12/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

Genere un archivo denominado arbitrariamente /etc/httpd/conf.d/ejemplo-autenticar.conf :


vi/etc/httpd/conf.d/ejemploautenticar.conf

Aada con el siguiente contenido:


Alias/privado/srv/www/privado
<Directory"/srv/www/privado">
OptionsIndexes
AllowOverrideAll
</Directory>

Recargue el servicio para que surtan efecto los cambios hechos a la configuracin:
servicehttpdreload

Genere el archivo /srv/www/privado/ .htaccess.


vi/srv/www/privado/.htaccess

Agregue el siguiente contenido:


AuthName"Solamenteusuariosautorizados"
AuthTypeBasic
Requirevaliduser
AuthUserFile/srv/www/.htpasswd

Ejecute lo siguiente para generar el archivo /srv/www/.htpasswd:


touch/srv/www/.htpasswd

Ejecute lo siguiente para cambir los permisos de slo lectura y escritura para usuario y asignar como
propietario al usuario y grupo apache:
chmod600/srv/www/.htpasswd
chownapache:apache/srv/www/.htpasswd

Aada algunos usuarios virtuales al /srv/www/.htpasswd ejecutando htpasswd usando como


argumentos la ruta del archivo de contraseas y nombre un usuario a aadir o modificar:
htpasswd/srv/www/.htpasswdjuan
htpasswd/srv/www/.htpasswdpedro
htpasswd/srv/www/.htpasswdhugo
htpasswd/srv/www/.htpasswdluis
http://www.alcancelibre.org/staticpages/index.php/comoapache/print

13/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

Realice las comprobaciones desde el anfitrin local utilizando el navegador Lynx.


lynxhttp://127.0.0.1/privado/

Reasignacin de directivas para PHP.


Suelen darse los casos donde una aplicacin, escrita en PHP, requiere algunas directivas de PHP en
particular. En muchos casos se llegan a necesitar variables que pueden comprometer la seguridad de
otras aplicaciones hospedadas en el servidor. Para tal fin es que se puede evitar modificar el archivo
/etc/php.ini utilizando la opcin php_flag en un archivo .htaccess . La siguiente sintaxis es la
siguiente:
php_flagdirectiva_phpvalor

Ejemplo
Se proceder a asignar siguientes directivas al directorio en la ruta /var/www/aplicacion , mismo
que ser visualizado desde Apache como http://127.0.0.1/aplicacion/:
allow_url_fopen : permite hacer descargas desde PHP. til para actualizar
aplicaciones como Joomla. El valor predeterminado es On
expose_php : define si se muestra u oculta que PHP est instalado en el
servidor. El valor predeterminado es On.
post_max_size : define el tamao mximo de los datos enviados a travs de las
operaciones POST del servidor HTTP. El valor predeterminado es 8 MiB.
upload_max_filesize : tamao mximo de los datos a subir al servidor a travs
de PHP. El valor predeterminado es 2 MiB.
El valor para allow_url_fopen ser Off (requerido slo por aplicaciones PHP muy antiguas o muy mal
escritas), el valor para expose_php ser Off, el valor para post_max_size ser 32M y el valor para
upload_max_filesize ser 32M.
Genere el directorio /var/www/aplicacion ejecutando lo siguiente:
mkdir/var/www/aplicacion

Genere el archivo /etc/httpd/conf.d/ejemplo-directivas-php.conf

ejecutando lo siguiente:

vi/etc/httpd/conf.d/ejemplodirectivasphp.conf

Aada el siguiente contenido:


Alias/aplicacion/var/www/aplicacion
<Directory"/var/www/aplicacion">
AllowOverrideAll
</Directory>

Genere el archivo /var/www/aplicacion/.hta ccess realizando lo siguiente:


http://www.alcancelibre.org/staticpages/index.php/comoapache/print

14/15

15/11/2016

AlcanceLibreConfiguracinbsicadeApache.

touch/var/www/aplicacion/.htaccess

Edite el archivo /var/www/aplicacion/.hta ccess:


vi/var/www/aplicacion/.htaccess

Agregue el siguiente contenido:


php_flagallow_url_fopenOff
php_valuepost_max_size32M
php_flagexpose_phpOff
php_valueupload_max_filesize32M

Genere el archivo /var/www/aplicacion/info.php , una funcin que muestra toda la informacin


acerca de PHP en el servidor, a fin de corroborar los valores de las directivas de PHP en relacin al
directorio, con el siguiente contenido:
<?php
phpinfo();
?>

Recargue el servicio para que surtan efecto los cambios hechos a la configuracin:
servicehttpdreload

Acceda con cualquier navegador de red hacia http://127.0.0.1/aplicacion/info.php.


Realice las comprobaciones desde el anfitrin local utilizando el navegador Lynx.
lynxhttp://127.0.0.1/aplicacion/info.php

Corrobore que los valores para las variables de PHP para el directorio involucrado realmente han
sido asignadas. En la sub-seccin PHP Core de la seccin Configuration , hay tres columnas. La
primera, Directive , corresponde a la directivas PHP. La segunda, Local Value , corresponde a los
valores de las directivas de PHP para el directorio actual. La tercera, Master Value , corresponde a
los valores de las directivas predeterminadas que estn definidas en el archivo /etc/php.ini .
Directive

Local Value

Master Value

post_max_size

32M

8M

expose_php

Off

On

allow_url_fopen

Off

On

upload_max_filesize

32M

2M

http://www.alcancelibre.org/staticpages/index.php/comoapache/print

15/15

Das könnte Ihnen auch gefallen