Kiat pemecahan masalah Apache

Coba Instrumen Kami Untuk Menghilangkan Masalah

Berapa kali Anda menginstal server LAMP hanya untuk menemukan Apache sepertinya tidak ingin berjalan bukan? Atau Anda menginstal modul baru hanya untuk melihat Apache mencoba mengunduh halaman sebagai file, alih-alih menampilkannya di layar?

Ada seratus seribu hal yang bisa salah dengan instalasi server web manapun. Dari penginstalan baru hingga penginstalan yang telah berjalan lama, Anda tidak pernah tahu kapan sesuatu akan menyebabkan server web Anda tersesat. Ketika itu benar-benar terjadi, selalu menyenangkan untuk mengetahui bahwa, biasanya, Occam's Razor berlaku.

Dalam tutorial ini Anda akan menemukan beberapa saran yang akan membantu Anda melalui beberapa masalah yang lebih umum yang dapat muncul dengan server web Apache.

Apakah server Anda benar-benar berjalan?

Percaya atau tidak, ini telah terjadi pada banyak administrator. Anda menurunkan server, melakukan pemeliharaan, dan ketika Anda pergi untuk memeriksa server Anda mendapatkan kesalahan. Hal pertama yang Anda lakukan, tentu saja, adalah memeriksanya /etc/apache2/apache.conf file untuk memastikan sintaks Anda benar. Tapi itu sempurna! Ada apa? Hal pertama yang mungkin ingin Anda periksa adalah memastikan server berjalan. Tetapi Anda tidak ingin hanya mengeluarkan perintah untuk memulai server atau memuat ulang server. Sebagai gantinya, berikan perintah:

sudo /etc/init.d/apache2 status

Yang seharusnya mengembalikan sesuatu seperti:

* apache sedang berjalan (pid 9751).

Jika tidak, mulai server dengan:

sudo /etc/init.d/apache2 mulai

atau

sudo apache2ctl mulai

CATATAN: Jika Anda menggunakan distribusi seperti Fedora, SuSE, atau Mandriva, Anda harus menggunakannya terlebih dahulu -nya ke pengguna root dan keluarkan perintah di atas TANPA menggunakan sudo .

Ini tidak berjalan dan tidak akan mulai

Apakah Anda baru saja membuat perubahan pada file konfigurasi Apache Anda? Apakah perubahannya benar? Jika Anda tidak yakin, Anda dapat menggunakan apache2ctl perintah untuk memeriksa sintaks file konfigurasi Anda. Ini dilakukan dengan perintah:

sudo apache2ctl configtext

Perintah di atas harus melaporkan:

Sintaks OK

Jika Anda tidak mendapatkan OK, Anda akan mendapatkan informasi yang menunjukkan kesalahan dalam file konfigurasi Anda.

Apache ingin mengunduh file .php!

Ini adalah masalah umum lainnya. Saat Anda menambahkan alat baru di server web Anda (seperti Drupal), jika file konfigurasi Anda telah diatur dengan benar, file .php mungkin tidak akan ditampilkan. Sebaliknya, upaya apa pun untuk melihat file .php akan membuat browser Anda mencoba mendownload file tersebut. Kenapa ini? Apache harus diberi tahu bahwa ekstensi tertentu harus ditampilkan, bukan diunduh. Ini dilakukan dari dalam file konfigurasi Apache. Buka file itu (di server Ubuntu akan menjadi /etc/apache2/apache2.conf) dan pertama-tama cari baris berikut:

DirectoryIndex index.html

Jika file itu tidak termasuk index.php hampir semua situs yang menggunakan php akan dianggap tidak berguna.

Baris kedua yang harus dicari adalah:

Aplikasi AddHandler / x-httpd-php .php

Jika Anda menemukan baris ini, dan diberi komentar, pastikan Anda menghapus komentarnya dengan menghapus karakter '#'. Jika tidak ada, tambahkan ke bagian bawah file konfigurasi.

Dan, seperti biasa, saat Anda membuat perubahan pada file konfigurasi, mulai ulang Apache.

Ketahui di mana mencari masalah

Terakhir, sangat penting bagi Anda untuk mengetahui ke mana harus berpaling pertama jika hal di atas tidak membantu Anda. Setiap kali saya memiliki masalah dengan Apache di mana Occam's Razor tidak berlaku, tempat pertama yang saya putar adalah file log.

Jika Anda melihat ke dalam / Var / log / apache2 Anda akan menemukan, setidaknya, file berikut:

  • access.log: Ini melacak koneksi apa pun yang dibuat ke server Anda.
  • error.log: Ini melacak semua kesalahan yang terjadi dengan Apache.
  • other_vhosts_access.log: Di sinilah host virtual akan mencatat ketika host virtual belum ditentukan file lognya sendiri.

Tentu saja, seiring berkembangnya situs Anda, file log Anda juga akan tersedia. Terlepas dari apa yang Anda temukan / Var / log / apache2 , di situlah Anda harus selalu berbalik pertama ketika Anda memiliki masalah. Bahkan sebelum Anda google.

Pikiran terakhir

Sekarang Anda seharusnya dapat menangani beberapa masalah yang lebih umum dengan server Apache. Dan jika masalah Anda tidak umum, Anda juga tahu ke mana harus berpaling untuk menemukan petunjuk yang akan membawa Anda ke jalan yang benar menuju koreksi.