aissa belaid.fr

Le 25 juillet 2011
httpd_logo

Ajoutez directement ces valeurs dans un fichier .htaccess ou dans votre vhost. Avec ceci vous devriez économiser un peu de bande passante et avoir de bon résultats même avec un peu de charge. Bien évidement, ces valeurs peuvent êtres adaptées en fonction de votre serveur et de votre charge.

Vous aurez besoin pour celà des modules apache suivants :

  • rewrite
  • deflate
  • expires

#Des valeurs correctes pour le Php en prod
php_value error_reporting 0
php_value display_error 0
php_value register_long_arrays 1
php_value allow_call_time_pass_reference 1
php_value magic_quotes_gpc 1
php_value magic_quotes_runtime 0
php_value implicit_flush 1
php_value safe_mode 0
php_value max_execution_time 30
php_value max_input_time 30
php_value memory_limit 64M #64 Mo, plus si vous avez beaucoup de données
php_value mysql.allow_persistent 1
php_value short_open_tag 1
php_value session.auto_start 0
php_value session.cookie_lifetime 1440 #pour éviter les sessions fermés trop rapidement
php_value session.gc_probability 1
php_value session.gc_divisor 100
php_value session.gc_maxlifetime 1440

#Gzip des pages
<ifmodule mod_deflate.c="">
DeflateCompressionLevel 1
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/xhtml+xml application/xml application/rss+xml application/atom_xml

SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:pdf|avi|mov|mp3|mp4|rm)$ no-gzip dont-vary

BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

# Pour les proxies
Header append Vary User-Agent env=!dont-vary

RewriteCond %{HTTP:Accept-Encoding} gzip
</ifmodule>

#Cache des images,script, css... dans le browser
<ifmodule mod_expires.c="">
#CACHE
ExpiresActive on
#images
ExpiresByType image/jpg "access plus 2 years"
ExpiresByType image/jpeg "access plus 2 years"
ExpiresByType image/gif "access plus 2 years"
ExpiresByType image/png "access plus 2 years"
ExpiresByType image/x-icon "modification plus 2 years"
#flash
ExpiresByType application/x-shockwave-flash "modification plus 2 years"
#css / scripts
ExpiresByType text/css "modification plus 2 years"
Header set Cache-Control "max-age=86400, public"
ExpiresByType text/javascript "modification plus 2 years"
#html/php
ExpiresByType text/html "modification plus 2 years"
ExpiresByType text/xml "modification plus 2 years"
#tout le reste
ExpiresDefault "modification plus 2 years"
Header set Cache-Control "max-age=86400, public"
### / CACHE
</ifmodule>

#Renvoi direct vers le module mobile pour les terminaux mobile, commenter cette partie si vous n'avez pas installé le module mobile
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/modules/Mobile/.*$
RewriteCond %{HTTP_ACCEPT} "text\/vnd\.wap\.wml|application\/vnd\.wap\.xhtml\+xml" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "sony|symbian|nokia|samsung|mobile|windows ce|epoc|opera" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "mini|nitro|j2me|midp-|cldc-|netfront|mot|up\.browser|up\.link|audiovox"[NC,OR]
RewriteCond %{HTTP_USER_AGENT} "blackberry|ericsson,|panasonic|philips|sanyo|sharp|sie-"[NC,OR]
RewriteCond %{HTTP_USER_AGENT} "portalmmm|blazer|avantgo|danger|palm|series60|palmsource|pocketpc"[NC,OR]
RewriteCond %{HTTP_USER_AGENT} "smartphone|rover|ipaq|au-mic,|alcatel|ericy|vodafone\/|wap1\.|wap2\.|iPhone|android"[NC]
RewriteRule ^(.*)$ /modules/Mobile/ [R=301]

Vous pouvez en supplément ajouter un cache tel que APC, Zend Optimizer ou autre et un reverse proxy.

Laisser un commentaire

*