Saya baru saja menginstal CentOS, Apache dan PHP. Ketika saya mengunjungi situs saya http://example.com/myapp/ , dikatakan "dilarang". Secara default itu tidak memuat file index.php.
Ketika saya mengunjungi http://example.com/myapp/index.php , itu berfungsi dengan baik.
Tahu bagaimana cara memperbaiki masalah itu?
Meskipun menambahkan 'DirectoryIndex index.php' ke file .htaccess mungkin berhasil,
CATATAN:
Ini dikutip dari http://httpd.apache.org/docs/1.3/howto/htaccess.html
Meskipun ini mengacu pada versi apache yang lebih lama, saya yakin prinsipnya masih berlaku.
Menambahkan yang berikut ini ke httpd.conf (jika Anda memiliki akses ke sana) dianggap bentuk yang lebih baik, menyebabkan lebih sedikit overhead server dan memiliki efek yang sama persis:
sumber
Sepertinya saya akan mengatakan indeks direktori disetel ke index.html, atau beberapa varian, coba:
Ini akan tetap memberikan prioritas index.html di atas index.php (berguna jika Anda perlu membuka halaman pemeliharaan)
sumber
Ini mungkin bisa membantu seseorang. ini cuplikan dari httpd.conf (Apache versi 2.2 windows)
sekarang ini akan mencari file index.html jika tidak ditemukan maka akan mencari index.php.
sumber
Coba buat file .htaccess dengan yang berikut ini
Sunting: Sebenarnya, bukankah ada paket 'php-apache' atau sesuatu yang seharusnya Anda instal dengan keduanya?
sumber
Saya memiliki masalah yang sama dengan situs di situs yang dihosting admin langsung kami. saya tambahkan
sebagai ekstensi httd khusus (yang menambahkan kode ke
httpd
file situs ) dan situs kemudian menjalankannyaindex.php
secara default.sumber
Masalah yang sama bagi saya. Solusi saya adalah mod_dir tidak diaktifkan dan apache2 tidak mengeluarkan kesalahan saat membaca arahan di file VirtualHost saya:
Menggunakan perintah:
Memperbaiki masalah.
sumber
a2enmod
?Untuk info: di beberapa konfigurasi Apache2 Anda harus menambahkan perintah DirectoryIndex di mods_enabled / dir.conf (tidak terletak di apache2.conf)
sumber
Setelah membaca semua ini dan mencoba memperbaikinya, saya mendapat solusi sederhana di forum ubuntu ( https://help.ubuntu.com/community/ApacheMySQLPHP ). Masalahnya terletak pada modul libapache2-mod-php5. Itulah mengapa browser mendownload file index.php daripada menampilkan halaman web. Lakukan hal berikut. Jika sudo a2enmod php5 return module tidak ada maka masalahnya ada pada libapache2-mod-php5. Bersihkan, hapus modul dengan perintah sudo apt-get --purge hapus libapache2-mod-php5 Kemudian instal lagi sudo apt-get install libapache2-mod-php5
sumber
Saya memiliki gejala yang serupa. Namun dalam kasus saya, kebodohan saya adalah secara tidak sengaja juga memiliki file index.html kosong di folder root web. Apache melayani ini daripada index.php ketika saya tidak secara eksplisit meminta index.php, karena
DirectoryIndex
dikonfigurasi sebagai berikut dimods-available/dir.conf
:Artinya, 'index.html' muncul di depan 'index.php' dalam daftar prioritas. Menghapus file index.html dari root web secara alami menyelesaikan masalah. D'oh!
sumber
Langkah demi langkah dan instruksi lengkap untuk Ubuntu 16.04.4 LTS dan Apache / 2.4.18
"
sudo -s
""
cd /etc/apache2/mods-enabled
""
vi dir.conf
" dan pindahkan index.php ke kanan setelah DirectoryIndex seperti di bawah ini dan simpan file lalu restart server apache."
service apache2 restart
"Jika Anda tidak melihat dir.conf maka Anda harus memuatnya (google untuk mengetahui caranya)
Selesai.
sumber
Posting ini mungkin sudah lama tetapi saya hanya mempostingnya jika itu membantu orang lain, saya tidak akan menyarankan untuk Membuat file .htaccess di root web Anda dan mengubah indeks. Saya merasa lebih baik mengikuti langkah-langkahnya
Buka folder conf dari folder apache milik saya
C:\Apache24\conf
Buka file bernama
httpd.conf
Pergi ke bagian tersebut
Tambahkan index.php ke dalamnya seperti yang ditunjukkan di bawah ini
Dengan cara ini, ia masih memilih index.html dan index.php sebagai indeks default tetapi mengutamakan index.html karena index.html datang sebelum * index.php. Maksud saya, Anda memiliki index.html dan index.php dalam direktori yang sama, index.html akan digunakan sebagai indeks default kecuali Anda menulis ** index.php * sebelum index.hml
Saya harap ini membantu seseorang ... Selamat Coding
sumber
Yang ini bekerja seperti jimat!
Pertama
lalu setelah itu dari
untuk
sumber