Saya baru saja memperbarui server Apache saya ke Apache / 2.4.6 yang berjalan di Ubuntu 13.04. Saya dulu memiliki file vhost yang memiliki yang berikut:
<Directory "/home/john/development/foobar/web">
AllowOverride All
</Directory>
Tetapi ketika saya berlari itu saya mendapat "Dilarang. Anda tidak memiliki izin untuk mengakses /"
Setelah melakukan sedikit googling saya menemukan bahwa untuk membuat situs saya berfungsi kembali saya perlu menambahkan baris berikut "Wajib semua diberikan" sehingga vhost saya terlihat seperti ini:
<Directory "/home/john/development/foobar/web">
AllowOverride All
Require all granted
</Directory>
Saya ingin tahu apakah ini "aman" dan tidak membawa masalah keamanan. Saya membaca di halaman Apache bahwa ini "meniru fungsionalitas yang sebelumnya disediakan oleh arahan 'Bolehkan dari semua' dan 'Tolak dari semua'. Penyedia ini dapat mengambil satu dari dua argumen yang 'diberikan' atau 'ditolak'. Berikut ini adalah contoh akan memberikan atau menolak akses ke semua permintaan. "
Tapi itu tidak mengatakan apakah ini semacam masalah keamanan atau mengapa kita sekarang harus melakukannya ketika di masa lalu Anda tidak harus melakukannya.
sumber
Jawaban:
Konfigurasi kontrol akses berubah pada 2.4, dan konfigurasi lama tidak kompatibel tanpa beberapa perubahan. Lihat di sini .
Jika konfigurasi lama Anda
Allow from all
(tidak ada alamat IP yang diblokir untuk mengakses layanan), makaRequire all granted
adalah equivilent fungsional baru.sumber
Require all denied
.Allow from all
. Anda harus "bergabung"Require all granted
denganRequire
aturan lain yang ada . Dalam kasus saya, yang sudah adaRequire valid-user
diabaikan ketika mengubah konfigurasi secara membabi buta seperti yang disarankan di mana-mana. Ini adalah hal terburuk yang bisa terjadi ...Saya tahu ini adalah posting lama tapi saya pikir saya dapat membantu lebih banyak dengan contoh fungsional yang selalu saya gunakan!
Di apache 2.2 akan seperti:
Di apache 2.4 akan seperti:
Hati-hati saat menggunakan otentikasi htacess , sintaks baru ini dapat melakukan beberapa hal buruk dan tidak terduga , jika itu kasus Anda, silakan baca: https://unix.stackexchange.com/questions/413309/apache-2-4-wants-me- untuk-memutuskan-memerlukan-valid-ip-atau-membutuhkan-valid-pengguna dan Anda harus baik-baik saja!
sumber
require all granted
otentikasi HTTP yang dicegah berfungsi, terima kasih atas informasinya.