Professional Documents
Culture Documents
ConfiguracindeApache
Cuandosehainstaladoelservidor,hayqueconfigurarlo.Apacheincluyepordefectouna
configuracinquearrancaelservidorenelpuertoTCPpordefecto,queeselpuerto80,ysirvelos
ficherosdeldirectorioquesehaespecificadomedianteladirectivadeconfiguracindenominada
DocumentRoot.EsteficherodeconfiguracindeApacheeselhttpd.conf,localizadoenel
subdirectorio"conf"dentrodeldirectoriodeinstalacin.httpd.confesunficherodetipoASCIIque
contienelasdirectivasdeconfiguracin.
Estructuradelficherodeconfiguracinhttpd.conf
httpd.confestcompuestoportresbloquesfundamentales,aunquelasdirectivasdecadaunodelos
bloquepuedenaparecerdesordenadasomezcladas.
Estosbloquesson:
Parmetrosglobales
Directivasdefuncionamiento
Hostsvirtuales
Algunosparmetrossonpropsitogeneral,yotrossonconfigurablesdeformaindependientepara
cadaconjuntodedirectoriosodeficherosoinclusoparaunservidorvirtualespecfico.Entales
casos,estosparmetrosseencuentrandentrodeseccionesenlasqueseindicaelcontextode
aplicacindedichoparmetro.Lasseccionesfundamentalesson:
<Directory>:losparmetrosqueseencuentrandentrodelaseccinDirectorysloseaplicanal
directorioindicadoysussubdirectorios.
<DirectoryMatch>:igualqueDirectory,aunqueaceptaexpresionesregularesenelnombredel
directorio.
<Files>:losparmetrosdeconfiguracinfacilitancontroldeaccesoalosficherosmediantesu
nombre.
<FilesMatch>:igualqueFiles,peroaceptaenelnombredelficheroexpresionesregulares.
<Location>:proporcionacontroldeaccesoalosficherosmediantelaURL.
<LocationMatch>:igualqueLocation,peroaceptaenelnombredelficheroelusodeexpresiones
regulares.
<VirtualHost>:losparmetrossloseaplicanaaquellaspeticionesdirigidasaestehost(nombrede
servidor,direccinIPopuertoTCP).
<Proxy>:sloseaplicanestosparmetrosaaquellaspeticionesdeproxy(requierequeest
instalado"modproxy")coincidentesconlaespecificacindeURL.
<ProxyMatch>:igualqueproxy,peroaceptaenlaURLindicadaelusodeexpresionesregulares.
<IfDefine>:sloseaplicasialarrancarelservidorexisteunparmetroconcretodefinidoenlalnea
decomandos,mediantelaopcinD.
http://www.cibernetia.com/manuales/instalacion_servidor_web/2_3_configuracion_apache.php 1/6
17/1/2017 ConfiguracindeApache
<IfModule>:seaplicanlosparmetrossielmduloespecificadoseencuentracargado(mediante
LoadModule)enelmomentodearrancarelservidor.
Encasodequeexistaconflictoentrediferentesespecificacionesdeparmetros,elordende
precedenciaes:
1.<Directory>y.htaccess
2.<DirectoryMatch>y<Directory>
3.<Files>y<FilesMatch>
4.<Location>y<LocationMatch>
Encuantoa<VirtualHost>,estasdirectivassiempreseaplicansiempredespusdelasdirectivas
generales.Deestemodo,unVirtualHostpuedemodificarlaconfiguracinpordefecto.
Unejemplodeconfiguracin:
<Directory/home/*/public_html>
OptionsIndexes
</Directory>
<FilesMatch\.(?i:gifjpe?gpng)$>
Orderallow,deny
Denyfromall
</FilesMatch>.
Directivasglobalesdeconfiguracin
Algunasdirectivasdeconfiguracinnuncaseaplicanalasseccionesantesmencionadas
(directorios,etc.),sinoqueafectanalconjuntodelservidorweb.Lasmsdestacablesson:
ServerRoot:especificalalocalizacindeldirectoriorazenelqueseencuentrainstaladoelservidor
web.Partiendodeestedirectorio,seencuentranlosficherosdeconfiguracin,etc.Silainstalacin
delservidorescorrecta,nodeberamodificarsenunca.
KeepAlive:especificasisedebenutilizarconexionespersistentesparaatenderlaspeticionesdeun
mismousuariomediantelamismaconexinTCP.
Listen:especificaelpuertoenqueseatendernlaspeticiones.Pordefectoelservidor"escucha"en
elpuerto80deTCP.PermiteespecificarlasdireccionesIPqueseutilizarn(encasodequeel
servidortuviesemsdeuna).Pordefectoseutilizarntodaslasdisponibles.
LoadModule:PermitecargarenelservidorlosmdulosadicionalesdeApache.Lasintaxises:
LoadModulemoduloficheromodulo
Sedebetenerinstaladomod_soparapoderutilizarla.
Directivasprincipales
Hayalgunasdirectivasque,generalmente,nosuelenaparecerenlasseccionesanteriormente
mencionadas(algunasdeellasnodebenestarenningunaseccin,yesobligatorioqueaparezcan
enlaseccinprincipal),sinoqueseencuentranenlaseccinprincipal.Estasdirectivasson:
ServerAdmin:especificaladireccindecorreoelectrnicodeladministrador.Estadireccinpuede
mostrarseenlosmensajesdeerroramododedireccindecontactoparaquelosusuarios
http://www.cibernetia.com/manuales/instalacion_servidor_web/2_3_configuracion_apache.php 2/6
17/1/2017 ConfiguracindeApache
notifiquenelerroraladministrador.Nodebeestardentrodeningunaseccin.
ServerName:sirveparaespecificarelnombreyelpuertoTCPqueelApacheutilizapara
identificarse.Sepuededeterminardeformaautomtica,peroserecomiendaespecificarlo.Siel
servidornotuvieraunnombreDNS,esrecomendableincluirsudireccinIP.Nodebeincluirse
dentrodeningunaseccin.Susintaxises:ServerNamenombredireccion:puerto
comoen:
ServerNamewww.uoc.edu:80
ServerName192.168.1.1:80
DocumentRoot:directoriorazdesdeelcualseservirnlosdocumentos.Pordefectoes"htdocs",
dentrodelacarpetadeinstalacindeApache.Nodebeaparecerdentrodeningunaseccin,a
excepcindelaseccinVirtualHost.Lecorrespondeunaseccin<Directory>enlacualsemarcan
losparmetrosdeconfiguracindeestedirectorio.
DirectoryIndex:especificaelficheroqueApacheservirpordefectoparacadadirectorioencasode
quenoseespecifiqueningnficheroconcretoenlaURLdelapeticin.Pordefectoes"index.html".
Esdecir,sisesolicitaenlabarradedireccionesdelnavegador:www.cibernetia.comelservidor
enviarpordefectowww.cibernetia.com/index.html.Esposibleespecificarmsdeunficheroyel
ordenconqueseespecificanlosficherosdeterminarlaprioridadparadeterminarculsedebe
servir.Esposibleencontrarladirectivafueradecualquierseccinodentrodealgunadeellas.
AccessFileName:determinaelficherodeconfiguracinencasodequestenosea.htaccess.Para
queestaconfiguracincumplasucometido,ladirectivaAllowOverridedebetenerunvalor
adecuado.Nopuedeestarincluidaenningunaseccin.Elficheropordefectoes.htaccess.
ErrorDocument:estadirectivaestableceelcomportamientodeApacheencasodeerror.Existen4
configuracionesdistintas:
Mostraralgntextodeerror.
Redireccinhaciaunficheroenelmismodirectorio.
Redireccinhaciaunficheroennuestroservidor.
Redireccinhaciaunficherofueradenuestroservidor.
LasintaxisesErrorDocumentcdigo_erroraccin.
Esposibleencontrarestadirectivatantodentrodeunaseccin,comoenlaconfiguracinglobal.
Porejemplo:
ErrorDocument404/noencont.html.
EncasodequeApachenoencuentreunfichero,semostrarelficheronoencont.html.
Alias:lasdirectivasAliasyAliasMatchpermitenladefinicindeaccesosadirectoriosqueestn
fueradelDocumentRoot.Susintaxises:Aliasurldirectorio.Porejemplo:
Alias/docs/home/documentos
harqueunapeticinahttp://www.uoc.edu/docs/manualsesirvadesde/home/documentos/manual.
UserDir:permiteindicaraApachequeunsubdirectoriodentrodeldirectoriodetrabajodelos
diferentesusuariosdelsistemasirvaparaqueestosalmacenensupginapersonal.
http://www.cibernetia.com/manuales/instalacion_servidor_web/2_3_configuracion_apache.php 3/6
17/1/2017 ConfiguracindeApache
Porejemplo:
UserDirpublico
harquelapginaalmacenadaeneldirectoriodelusuario"test",dentrodelsubdirectorio"pblico",
seaaccesiblecomo:
http://www.uoc.edu/~test/indice.html
Directivasdeseccin
Casitodaslasseccionesdelocalizacin(Directory,Location,etc.)incluyenunaseriededirectivasen
suconfiguracinquepermitencontrolarelaccesoalcontenido.Elmdulomod_accessfacilitaestas
directivas.
Allow:permiteespecificarquintieneautorizacinparaaccederaunrecurso.Sepuedenespecificar
direccionesIP,nombresdemquina,fragmentosdelnombreodeladireccinovariablesdela
peticin.Existelapalabraclave"all"queindica"todoslosclientes".
Deny:permiteespecificaraquinnopermitimoselaccesoaunrecurso.Cuentaconlasmismas
opcionesqueAllow.
Order:permiteafinarelfuncionamientodelasanterioresdirectivas:AllowyDeny.Existen2
opciones:
Allow,Deny.Pordefectosedeniegaelaccesoyslopodrnaccederquellosclientesque
cumplanlasespecificacionesdeAllowyencambionocumplanlasespecificacionesdeDeny.
Deny,Allow.Pordefectosepermiteelaccesoyslopodrnentrarlosclientesquenocumplan
lasespecificacionesdeDenyoscumplanlasespecificacionesdeAllow.
Servidoresvirtuales
Apachepermiteservirvariossitioswebconunnicoservidor.Paraellopermitelacreacinde
dominiosvirtualesenfuncindediferentesdireccionesIPodiferentesnombresporIP.Apachefue
delosprimerosservidoresquesoportservidoresvirtualessinnecesidaddedistinguirporIP,sinoen
funcindenombre.Estacapacidadsimplificaenormementelaadministracindelosservidores,y
suponeunahorrodedireccionesIP,quenormalmentesonescasas.Losservidoresvirtualesque
distinguenenfuncindelnombresonperfectamentetransparentesparaelcliente,conlaposible
excepcindeaquellosnavegadoresmuyantiguosquenoenvenlacabecera"Host:"concada
peticin.
ServidoresvirtualespordireccinIP
Paraatenderavariosservidoresvirtuales,cadaunodeellosconunadireccinIPdiferente,seutiliza
laseccindeconfiguracinVirtualHost.ConestaseccinsedefineunaconfiguracinydireccinIP
paracadaunodelosservidores.
Unejemploseraelsiguiente.
<VirtualHost192.168.1.1>ServerAdminwebmaster@uoc.edu
DocumentRoot/web/uoc
ServerNamewww.uoc.edu
ErrorLog/web/logs/uoc_error_log
http://www.cibernetia.com/manuales/instalacion_servidor_web/2_3_configuracion_apache.php 4/6
17/1/2017 ConfiguracindeApache
TransferLog/web/logs/uoc_access_log
</VirtualHost>
<VirtualHost192.168.254.254>
ServerAdminwebmaster@asociados.uoc.edu
DocumentRoot/web/asociados
ServerNameasociados.uoc.edu
ErrorLog/web/logs/asociados_error_log
TransferLog/web/logs/asociados_access_log
</VirtualHost>
esteejemplodefine2servidoresweb,cadaunodeellosconunaIPyunnombrediferentes.Ambos
tienensupropioDocumentRoot,etc.
ParahacerusodeservidoresvirtualesporIP,senecesitaqueelsistemaservidortengaconfiguradas
ensusistemaoperativolasdiferentesdireccionesIPquedebeservir.
Servidoresvirtualespornombre
Paraatenderavariosservidores,utilizandounamismadireccinIPparatodosellos,seutilizala
seccinVirtualHost,quepermitedefinirlosparmetrosdecadaunodelosservidores.Sirvacomo
ejemplolasiguienteconfiguracin:
NameVirtualHost*:80
<VirtualHost*:80>
ServerAdminwebmaster@uoc.edu
ServerNamewww.uoc.edu
DocumentRoot/web/uoc
ErrorLog/web/logs/uoc_error_log
TransferLog/web/logs/uoc_access_log
</VirtualHost>
<VirtualHost*:80>
ServerAdminwebmaster@uoc.edu
ServerNameasociados.uoc.edu
DocumentRoot/web/asociados
ErrorLog/web/logs/asociados_error_log
TransferLog/web/logs/asociados_access_log
</VirtualHost>.
SepuedeutilizarunadireccinIPconcretaenlugarde*,locualpermiteasignar,porejemplo,un
grupodeservidoresvirtualespornombreaestaIPyotrogrupoaotraIP.
Cuandonuestroservidortiene2direccionesIP,perohemosasignadoalas2elmismonombre,se
necesitaunusoespecialdelasdirectivasdeservidorespornombre.Porejemplo,cuandose
disponeunaconexinderedenlaintranetyotraconexindiferenteenInternetconelmismo
nombre,casoenelcualpodemosservirelmismocontenidodelaestaforma:
NameVirtualHost192.168.1.1
NameVirtualHost172.40.30.40
<VirtualHost192.168.1.1172.40.30.40>
DocumentRoot/www/servidor1
ServerNameservidor.uoc.edu
ServerAliasservidor
</VirtualHost>
http://www.cibernetia.com/manuales/instalacion_servidor_web/2_3_configuracion_apache.php 5/6
17/1/2017 ConfiguracindeApache
ConestaconfiguracinsepuedeservirlamismawebhacialaintranetyhacialaInternet.Es
convenientesealarelusodeunaliasparaelservidor,locualpermitenotenerqueusardominios
enlaintranet.Disponemosdeunaespecificacindeservidorvirtualpordefecto"_default_"que
permiteatenderlaspeticionesquenosirveningnotroservidorvirtual.
<VirtualHost_default_>
DocumentRoot/www/defecto
</VirtualHost>
Podemosusarlaetiqueta"_default_"indicandounnmerodepuertoparaespecificarservidorespor
defectoqueseandiferentesparacadapuerto.Apachepermitetambinconfiguracionesms
complejasdeservidoresvirtuales,muytilesencasosde,porejemplo,servidoresmasivos.Una
excelenteguadereferenciaseencuentraenlawebdelproyectoApache,conconsejostilespara
configurarelservidor.ExistenmuchosservidoresHTTPdecdigolibre,perolamayoradeelloshan
quedadoeclipsadosporApache.Algunosdeestosservidorestienencaractersticasqueleshacen
especialmenteinteresantes.
http://www.cibernetia.com/manuales/instalacion_servidor_web/2_3_configuracion_apache.php 6/6