Съвети за отстраняване на проблеми в Apache
- Категория: Развитие
Колко пъти сте инсталирали LAMP сървър само за да намерите Apache изглежда не иска да работи правилно? Или инсталирате нов модул само за да видите Apache да се опита да изтегли страниците като файл, вместо да ги показва на екрана?
Има сто и хиляда неща, които могат да се объркат с всяка инсталация на уеб сървър. От нова инсталация до инсталация, която работи отдавна, никога не знаете кога нещо ще доведе до заблуда на вашия уеб сървър. Когато това се случи, винаги е приятно да знаем, че обикновено се отнася бръсначът на Occam.
В този урок ще намерите някои съвети, които ще ви помогнат чрез някои от по-често срещаните проблеми, които могат да се появят с уеб сървър на Apache.
Всъщност сървърът ви работи?
Вярвате или не, това се е случило с много администратори. Сваляте сървъра, правите известна поддръжка и когато отидете да проверите сървъра, получавате грешки. Първото нещо, което правите, естествено, е да проверите това /etc/apache2/apache.conf файл, за да се уверите, че синтаксисът ви е правилен. Но е перфектно! Какво става? Първото нещо, което може да искате да проверите, е да се уверите, че сървърът работи. Но не искате просто да издадете командата да стартира сървъра или да презареди сървъра. Вместо това задайте командата:
sudo /etc/init.d/apache2 статус
Което трябва да върне нещо като:
* apache работи (pid 9751).
Ако не, стартирайте сървъра с едно от следните:
sudo /etc/init.d/apache2 старт
или
sudo apache2ctl старт
ЗАБЕЛЕЖКА: Ако използвате дистрибуция като Fedora, SuSE или Mandriva, първо трябва да се наложи негов на root потребител и издайте горните команди БЕЗ използване Sudo ,
Не работи и няма да започне
Направихте ли промени в конфигурационния си файл Apache? Правилни ли са промените? Ако не сте сигурни, можете да използвате apache2ctl команда за проверка на синтаксиса на вашия конфигурационен файл. Това става с командата:
sudo apache2ctl configtext
Горната команда трябва да отчита:
Синтаксис ОК
Ако не получите ОК, ще получите информация, която сочи грешките във вашия конфигурационен файл.
Apache иска да изтегли .php файлове!
Това е друг често срещан проблем. Когато добавите нов инструмент на вашия уеб сървър (като Drupal), ако конфигурационният ви файл е настроен правилно, всеки .php файл може да не се показва. Вместо всеки опит за преглед на .php файл вместо това браузърът ви ще се опита да изтегли файла. Защо е това? Apache трябва да бъде информиран, че трябва да се показват определени разширения, а не да се изтеглят. Това става от конфигурационния файл на Apache. Отворете този файл (в сървъра на Ubuntu той ще бъде /etc/apache2/apache2.conf) и първо потърсете следния ред:
DirectoryIndex index.html
Ако този файл не включва index.php почти всички сайтове, които използват php, ще станат безполезни.
Вторият ред, който трябва да се търси, е:
Приложение AddHandler / x-httpd-php .php
Ако намерите този ред и той е коментиран, не забравяйте да го декомментирате, като премахнете символа „#“. Ако не е там, добавете го в долната част на конфигурационния файл.
И както винаги, когато правите промяна в конфигурационния файл, рестартирайте Apache.
Знайте къде да търсите проблеми
И накрая, важно е да знаете къде да се обърнете първо, когато горното не ви помогне. Всеки път, когато имам проблем с Apache, при който бръсначът на Occam не се прилага, първото място, което обръщам, са лог файловете.
Ако погледнете вътре / Var / log / apache2 ще намерите най-малко следните файлове:
- access.log: Това следи всяка връзка, направена към вашия сървър.
- error.log: Това следи всички грешки, които възникват при Apache.
- other_vhosts_access.log: Това е мястото, където виртуалните хостове ще влязат, когато на виртуалния хост не е предписан собствен лог файл.
Разбира се, тъй като вашият сайт се развива, така и вашите налични лог файлове. Независимо от това, което намирате / Var / log / apache2 , именно там винаги трябва първо да се обърнете, когато имате проблеми. Дори преди да си google.
Заключителни мисли
Сега би трябвало да можете да се справите с някои от по-често срещаните проблеми със Apache сървъра. И ако проблемът ви не е често срещан, вие също знаете къде да се обърнете, за да намерите улики, които ще ви отведат по правилния път към корекция.