In questo articolo vedremo come configurare una webapp su Amazon Elastic BeanStalk per modificare la configurazione di Apache Httpd.
Il seguente script inserito dentro la directory ebextensions nella root della webapp consente di modificare la configurazione del servizio Apache Httpd in esecuzione sul server. Nello specifico, la nuova configurazione prevede di attivare il mod_cache (per il quale viene generata anche una directory per la staticizzazione) e il mod_deflate, cosi da ottimizzare i tempi di risposta del server. Oltre a sostituire la configurazione installata di default, viene riavviato il servizio per applicare le configurazioni durante il deploy della webapp. Ricordo che gli script di configurazione vanno formattati secondo le regole di YAML
Lo script di configurazione è il seguente:
files:
“/etc/httpd/conf.d/elasticbeanstalk.conf” :
mode: “000644”
owner: root
group: root
content: |
<VirtualHost *:80>
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:8080/ retry=0
ProxyPassReverse / http://localhost:8080/
ProxyPreserveHost on
LogFormat “%h (%{X-Forwarded-For}i) %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\””
ErrorLog /var/log/httpd/elasticbeanstalk-error_log
TransferLog /var/log/httpd/elasticbeanstalk-access_log
####CONFIGURAZIONI CACHE####
###CacheRoot – The directory root under which cache files are stored
CacheRoot “/var/www/cache/”
CacheEnable disk /
CacheDisable /admin
CacheDisable /media
CacheDisable /engines
###CacheIgnoreHeaders – Do not store the given HTTP header(s) in the cache.
CacheIgnoreHeaders Set-Cookie
CacheDirLevels 1
CacheDirLength 2
###CacheDefaultExpire – The default duration to cache a document when no expiry date is specified
CacheDefaultExpire 600
###CacheMaxExpire – The maximum time in seconds to cache a document
CacheMaxExpire 600
####FINE CONFIGURAZIONI CACHE####
###EXPIRES
ExpiresActive On
ExpiresDefault “access plus 10 minutes”
###DEFLATE
AddOutputFilterByType DEFLATE text/html text/css application/x-javascript text/plain
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</VirtualHost>
commands:
create-apache-cache:
command: mkdir -p /var/www/cache
create-apache-cache-2:
command: chown apache /var/www/cache
restart-apache:
command: /etc/init.d/httpd reload
Download: [download id=”14″]