Bagaimana saya bisa mengaktifkan mod_rewrite di apache di Ubuntu?

13

Bagaimana Anda mengaktifkan mod_rewrite dengan Apache di Ubuntu 10.04?

Saya mencoba menyalin rewrite.loaddari /etc/apache2/mods-availableke etc/apache2/mods-enabledtetapi itu tidak berhasil.

Nathan Osman
sumber

Jawaban:

20

Coba ini sudo a2enmod rewrite:, lalu restart apache.

Rwky
sumber
4

Jawaban Obsidian untuk menggunakan a2enmod adalah solusi yang tepat. Metode andol akan bekerja, tetapi bisa rusak pada peningkatan. Apa yang dilakukan a2enmod hanyalah membuat tautan simbolik, jadi dua solusi berikut sama, keduanya layak,:

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

atau

  a2enmod rewrite

Namun, a2enmod akan mencari jenis file lain, beberapa memiliki .conf dan mungkin yang lain. Tidak ada alasan untuk tidak mempelajari perintah ini, meskipun penting untuk mengetahui apa yang terjadi di latar belakang.

Menyalin file akan membuat admin di masa depan sangat tidak senang dengan Anda. :)

Justin Alan Ryan
sumber
Yah, ini hanya untuk pengujian lokal, jadi bukan masalah besar. Tapi ya, a2enmodtetap saja lebih mudah.
Nathan Osman
2

Sebenarnya, ketika menjadi jenis solusi yang salah, menyalin rewrite.load dari ./mods-available/ ke ./mods-enabled/ seharusnya berhasil. Apakah Anda ingat untuk memulai kembali apache setelahnya?

Dalam setiap kasus, ./mods-enabled/ biasanya harus berisi symlink ke file yang sesuai di ./mods-available/ . Ini, seperti yang disebutkan oleh Obsidian, paling mudah ditangani oleh perintah a2enmod dan a2dismod.

Selain mengaktifkan modul, Anda juga harus mengaktifkan penulisan ulang. Sebelum Anda dapat menulis RewriteCond : s dan RewriteRule : s harus ada " RewriteEngine On " dalam konteks konfigurasi itu.

andol
sumber
Itu juga berhasil. Hanya ingat untuk mengatur izin yang tepat pada symlink di mod-enabled ... atau Anda akan mencabut rambut Anda.
Nathan Osman