Come posso abilitare mod_rewrite in apache su Ubuntu?


13

Come si abilita mod_rewrite con Apache in Ubuntu 10.04?

Ho provato a copiare rewrite.loadda /etc/apache2/mods-availablea etc/apache2/mods-enabledma non ha funzionato.

Risposte:


20

Prova questo sudo a2enmod rewrite:, quindi riavvia apache.


4

La risposta di Obsidian all'utilizzo di a2enmod è la soluzione corretta. il metodo di andol funzionerebbe, ma potrebbe rompersi durante l'aggiornamento. Quello che fa a2enmod è semplicemente creare un collegamento simbolico, quindi i due seguenti sono la stessa soluzione, entrambe appropriate:

  ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

o

  a2enmod rewrite

Tuttavia, a2enmod cercherà altri tipi di file, alcuni hanno .conf e forse altri. Non c'è motivo di non imparare questo comando, anche se è importante sapere cosa sta succedendo in background.

La copia del file renderebbe qualsiasi amministratore futuro molto sgradito con te. :)


Bene, è solo per i test locali, quindi non è un grosso problema. Ma a2enmodè comunque più semplice.
Nathan Osman,

2

In realtà, pur essendo il tipo di soluzione sbagliata, la copia di rewrite.load da ./mods-available/ a ./mods-enabled/ dovrebbe aver funzionato. Ti sei ricordato di riavviare Apache in seguito?

In ogni caso, ./mods-enabled/ dovrebbe in genere contenere collegamenti simbolici ai file corrispondenti in ./mods-available/ . Questo è, come menzionato da Obsidian, il più semplice gestito dai comandi a2enmod e a2dismod.

Oltre ad abilitare il modulo, dovrai anche attivare la riscrittura. Prima di poter scrivere RewriteCond : se RewriteRule : s deve esserci un " RewriteEngine attivo " in quel contesto di configurazione.


Funziona anche questo. Ricorda solo di impostare le giuste autorizzazioni sui symlink in mods-enabled ... o ti toglierai i capelli.
Nathan Osman,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.