How to
Modulul mod_subtitute de la Apache pe FreeBSD
by sz on Jan.26, 2009, under How to
Acest modul este disponibil începând cu versiune apache 2.2.7 și mai multă informație poate fi găsită pe site-ul apache.
Utilitatea lui parvine atunci când conținutul de pe disk nu poate fi modificată (spre exemplu, se sincronizează periodic cu altă locație și orice modificare se pierde ulterior).
La momentul când am setat oglinda neoficială a MySQL, am descoperit mai multe nereguli în sursele fișierelor .html, spre exemplu, pagina de unde pot fi descărcate produsele MySQL avea ca destinație site-ul oficial, și respectiv era complicat să copiez distributivul de pe serverul meu propriu.
În portul pentru FreeBSD, “make config” nu oferă posibilitatea de-al compila (nu există în lista de opțiuni), astfel e nevoie de a compila și instala acest modul separat.
Se presupune că deja este instalat apache 2.2.7 sau mai sus, sursa este prezentă în “/usr/ports/distfiles/apache22/”, în exemplul meu httpd-2.2.17.tar.bz2
Despachetăm arhiva
# cd /usr/ports/distfiles/apache22/ # tar -xzf httpd-2.2.17.tar.bz2
Compilăm și instalăm modulul
# apxs -cia httpd-2.2.17/modules/filters/mod_substitute.c
Verificăm dacă nu-s erori fi că fișierul .so e la locul său
# ll /usr/local/libexec/apache22/mod_substitute.so
Edităm fișierul de configurare apache
# vi /usr/local/etc/apache22/httpd.conf
Și adăgăm următorul rând, imediat după ultimul de tipul “LoadModule”
LoadModule substitute_module modules/mod_substitute.so
Acum, putem configura modulul.
În .htaccess sau în httpd.conf adăugăm ceva similar
AddOutputFilterByType SUBSTITUTE text/html Substitute s/foo/bar/ni
Restartăm apache pentru a pune în aplicație modificările
# /usr/local/etc/rc.d/apache22 reload