• About Me
  • Skills
  • Education
  • Employment
  • Blog
  • Contact
  • Open Source
    • WordPress
      • 3B Meteo Plugin
      • Facebook Like and Send
      • Google Monthly XML Sitemap
      • Google News Sitemap
      • Google Plus Comments
      • Google Plus One Button
      • I don’t endorse Google
      • I don’t endorse Wikipedia
      • I don’t endorse WIkipedia
      • Ottimizzare WordPress per renderlo più veloce
      • Rich Category Editor
      • Save To Google Drive
      • Sociable Italia
      • Third Party Cookie Eraser
      • Twitter Follow Button
      • WP instantempo
      • WP Super Secure and Fast htaccess
    • Plone SEO – collective.perseo
  • Creations
    • Web Marketing
    • SEO
    • WPO
    • SEO Stupidity
    • Webmaster Superhero
    • Il Vero SEO

I File di Configurazione

  • Home
  • Apache
  • I File di Configurazione

In questo post cercherò di descrivere brevemente i file usati per configurare Apache

  • File di configurazione principale
  • Sintassi del file di configurazione
  • Moduli
  • La visibilità delle istruzioni
  • htaccess

File di configurazione principale

Apache viene configurato inserendo istruzioni (direttive) nel file di testo della configurazione. Il file di configurazione principale viene solitamente chiamato httpd.conf. La posizione di questo file viene impostata al momento della compilazione, ma puo’ essere sovrascritta con il comando di flag -f.

In aggiunta, altri file di configurazione possono essere aggiunti usando l’istruzione Include, e le wildcard possono essere usate per includere svariati file di configurazione. Ogni direttiva puo’ essere messa in uno di questi file di configurazione. I cambiamenti ai file di configurazione principali vengono riconosciuti solamente dopo che Apache viene avviato o riavviato.

Il server legge anche un file che contiene tipi di documento mime; il nome del file viene impostato nella direttiva TypesConfig, ed è di default mime.types.

Sintassi del file di configurazione

In sintesi il file di configurazione di Apache contiene una istruzione per linea. Il back-slash “/” puo’ essere usato come ultimo carattere in una linea per indicare che l’istruzione continua nella linea successiva. Non ci devono essere altri caratteri o spazi bianchi tra il back-slash e il termine della linea.

Le istruzioni nel file di configurazione sono case-insensitive (non importa dunque se scritte in maiuscolo o minuscolo), ma gli argomenti delle istruzioni sono invece spesso case sensitive.

Le linee che iniziano con un carattere di hash “#” vengono considerate dei commenti, e dunque ignorate. I commenti non possono essere inclusi in una linea dopo una istruzione di configurazione.

Le linee vuote e gli spazi che vengono messi prima di una istruzione vengono ignorati, quindi è possibile indentare le varie istruzioni per rendere il codice più leggibile.

Per controllare la correttezza sintattica del file di configurazione senza avviare il server può essere usato il comando apachectl configtest oppure l’opzione -t.

Moduli

Apache è un server modulare. Questo implica che solo le funzionalità di base sono incluse nel core del server. Le impostazioni avanzate sono disponibili attraverso una serie di moduli che possono essere caricati in Apache. Di default, una serie di moduli base sono inclusi nel server al momento della compilazione. Se il server viene compilato usando moduli caricati dinamicamente, allora i moduli possono essere compilati separatamente e aggiunti in qualsiasi momento usando la direttiva LoadModule, altrimenti Apache va ricompilato ogni volta per aggiungere o eliminare moduli. Le istruzioni di configurazione possono essere incluse in modo condizionale sulla base della presenza di altri moduli includendoli tra un blocco <IfModule>.

Per vedere quali moduli sono compilati nel server è possibile usare l’opzione di comando -l.

La visibilità delle istruzioni

Le istruzioni messe nel file di configurazione principale vengono applicate a tutto il server. Se si vuole cambiare la configurazione solo per alcune parti del server è possibile limitare il campo d’azione delle istruzioni inserendole nelle sezioni <Directory>, <DirectoryMatch>, <Files>, <FilesMatch>, <Location>, <LocationMatch>. Queste sezioni limitano l’applicazioni delle istruzioni che includono a particolari posizioni all’interno del filesystem o URL. Queste possono anche essere annidate consentendo una configurazione molto raffinata.

Apache ha la capacità di far girare più siti contemporaneamente. Questo meccanismo viene chiamato Virtual Hosting. Il campo d’azione delle direttive puo’ inoltre essere limitato piazzandole all’interno della sezione <VirtualHost>, così verranno applicate solamente ad un sito in particolare.

Anche se molte delle istruzioni possono essere messo in qualsiasi sezione spesso non ha senso usarle in certi contesti. Ad esempio, le istruzioni che controllano la creazione dei processi possono essere solamente messe nel contesto principale del server. Per capire come piazzare le varie istruzioni all’interno delle sezioni bisogna controllare il Context delle direttive.

.htaccess

Apache consente di decentralizzare la gestione della configurazione tramite dei file speciali posizionabili dentro all’albero del vostro sito. Questi file speciali sono di solito chiamati .htaccess, ma questo nome puo’ essere specificato e personalizzato all’interno della direttiva AccessFileName. Le istruzioni inserite nel file .htaccess vengono applicate alla directory in cui viene messo e a tutte le sue sotto-directory. Il file .htaccess segue la stessa sintassi del file di configurazione principale. Dato che il file .htaccess viene letto ad ogni richiesta, i cambiamenti fatti vengono riconosciuti e applicati immediatamente.

Per sapere quali direttive possono essere inserite nel file .htaccess bisogna controllare in Context delle direttive. L’amministratore del server ha la possibilità di controllare quali istruzioni possono essere consentite nel file .htaccess configurando la direttiva AllowOverride nel file di configurazione principale.

© 2017 Andrea Pernici - SEO, Design & Technology as attitudes - Me on freebase - Privacy Policy