3.3.4 Apache e mod_rewrite

Anche se CakePHP è costruito in modo da funzionare con mod_rewrite ovunque, alcuni utenti hanno riscontrato delle difficoltà. Riportiamo alcuni consigli per un corretto funzionamento:

  • Assicurati che .htaccess sia attivato. Nel file httpd.conf, dovresti trovare una sezione che definisce la tua directory nel server. Assicurati che AllowOverride sia impostato a All per la directory DocumentRoot.
  • Assicurati che quello che stai modifcando sia httpd.conf del sistema, piuttosto che un httpd.conf specifico di un utente o di un sito.
  • Mancano i files .htaccess forniti con CakePHP? Questo può succedere durante la copia o lo spostamento di files, dato che alcuni sistemi operativi trattano i files .htaccess come file nascosti, perché iniziano con '.'. Assicurati che la tua copia di CakePHP sia autentica (scaricata dalla sezione Downloads del sito o dal repository SVN) e che sia integra.
  • Assicurati che stai utilizzando correttamente mod_rewrite. Nel tuo file httpd.conf dovresti trovare qualcosa di simile a questo: LoadModule rewrite_module libexec/httpd/mod_rewrite.so e AddModule mod_rewrite.c.
  • Se stai istallando CakePHP in una directory utente (http://example.com/~username), devi modificare il file .htaccess nella directory principale di CakaPHP. Aggiungi la linea "RewriteBase /~myusername/".