Saya bertanya-tanya apakah mungkin untuk memeriksa apakah mod_rewrite
diaktifkan pada Apache DAN IIS di PHP
.
ModRewrite untuk IIS ada. Lihat itu here
.
Jadi, saya sedang mencari script PHP yang memeriksa mod_rewrite
pada Apache dan IIS.
Adakah yang tahu skrip seperti itu atau dapat menulisnya?
Khusus untuk Microsoft IIS .
Terima kasih!
sumber
mod_rewrite
terpasang. The IIS Mod-Rewrite modul Anda mungkin maksudkan adalah produk yang sama sekali berbeda dan komersial - tidak memiliki hubungan dengan modul Apache, itu pertanyaan yang sama sekali berbeda dan saya tidak punya pengalaman menggunakannya.phpinfo()
dapat berguna untuk banyak hal, tetapi jika Anda ingin menulis sistem yang digunakanmod_rewrite
jika itu diaktifkan atau mundur ke beberapa perilaku lain, akan berguna untuk mendeteksinya secara terprogram.Salin bagian kode ini dan jalankan untuk mencari tahu.
sumber
Saya suka solusi Christian Roy :
Kemudian, Anda dapat memeriksa kode PHP Anda untuk
Tidak tahu apakah ini bekerja juga dengan IIS (saya tidak punya cara untuk memeriksa) tetapi kemungkinannya bagus.
sumber
<IfModule mod_env.c>
itu akan hampir sempurna. :)Unggah file bernama info.php dengan kode ini dan jalankan:
Cari mod_rewrite pada halaman, dan lihat apakah Anda dapat menemukannya di bawah Modul Dimuat.
sumber
jangan membuatnya begitu sulit sehingga Anda bisa menemukannya
phpinfo();
Semoga bermanfaat!
Terima kasih
sumber
via command line kita dalam centOs kita bisa melakukan ini
sumber
Lihat di bawah Konfigurasi di apache2handler di baris Modul Dimuat.
Ini sederhana dan berhasil.
sumber
Ini adalah metode saya saat ini untuk memeriksa apakah Mod_rewrite diaktifkan untuk Apache dan IIS
Ini bekerja di mesin lokal saya dan juga bekerja di hosting berbasis IIS saya. Namun, pada server apache tertentu, itu tidak berfungsi untuk Apache karena apache_get_modules () dinonaktifkan tetapi mod_rewrite diaktifkan di server itu.
sumber
Anda bisa mendapatkan daftar modul apache yang terpasang , dan memeriksanya. Mungkin Anda dapat memeriksa apakah sudah diinstal dengan mencari file .dll (atau yang setara dengan linux).
sumber
Dua baris kode:
sumber
Satu lagi metode melalui
exec()
.Jika
mod_rewrite
dimuat itu akan mengembalikan "rewrite_module" di output.sumber
Gagasan lain, memang lebih merupakan hack kotor, mengenai mod rewrite adalah server dependend dan tidak perlu masalah php: Mengapa tidak, jika Anda memiliki kemungkinan, buat direktori uji letakkan .htaccess di dalamnya penulisan ulang untuk test.php, panggil direktori via http dan periksa apakah Anda mendapatkan hasil yang diharapkan Anda masukkan ke test.php.
Memang kotor.
sumber
Gunakan fungsi ini:
sumber
Bagaimana kalau membuat redirect ke file yang dikenal dan kemudian memeriksa apakah redirect itu benar-benar berfungsi dengan curl?
sumber
Untuk pahlawan dan pahlawan IIS:
Tidak perlu mencari mod_rewrite. Cukup instal modul Rewrite 2 lalu impor file .htaccess .
sumber