/var/log/apache2/error.log
powinien wyświetlać następujący wiersz, jeśli PHP zostało pomyślnie załadowane:
[Wt 30 sierpnia 12:53:36 2011] [zawiadomienie] Apache / 2.2.14 (Ubuntu) PHP / 5.3.2-1ubuntu4.9 ze skonfigurowaną łatką Suhosin - wznawianie normalnych operacji
Zwróć uwagę na datę, jeśli jest to coś z 2009 roku, coś źle skonfigurowałeś.
AddType
jest bezużyteczny, musisz użyć:
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
Zobacz także instrukcjami wyświetlanymi na php.net dla Apache 2.x .
Nie powinno być potrzeby ręcznego dodawania tego, libapache2-mod-php5
instaluje pakiet /etc/apache2/mods-available/php5.conf
zawierający:
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
php_admin_value engine Off
</Directory>
</IfModule>
</IfModule>
Ponieważ jest to plik konfiguracyjny, możliwe, że nie został zainstalowany wraz z aktualizacją. Aby naprawić to wyczyść , a następnie zainstaluj ponownie:
sudo apt-get purge libapache2-mod-php5
sudo apt-get install libapache2-mod-php5
Aby włączyć PHP, musisz uruchomić:
sudo a2enmod php5
Uruchom ponownie serwer sieciowy po:
sudo /etc/init.d/apache2 restart
Inne rzeczy do zrobienia:
- sprawdź w ustawieniach sprzeczne ustawienia
/etc/apache2
.
- zbudowałeś Apache ze źródła?
- Uruchom,
sudo apache2ctl configtest
aby sprawdzić konfigurację pod kątem błędów składniowych
- Otwórz http: // localhost / server-info, aby sprawdzić załadowaną konfigurację i moduły. W tym
status
celu należy załadować moduł. Jeśli korzystasz z serwera zdalnego, musisz dodać siebie do Allow from
listy /etc/apache2/mods-enabled/status.conf
i ponownie uruchomić serwer później
Cóż, po tym, jak nic więcej nie działało i Apache robiło się bardzo zagmatwane, w końcu po prostu wyczyściłem wszystkie pakiety Apache i ponownie je zainstalowałem.
Wygląda na to, że teraz działa dobrze, kto wie, co było z tym nie tak ...
EDYTOWAĆ
Dowiedziałem się, co było nie tak, kiedy ponownie konfigurowałem ustawienia konfiguracji Apache. [Ten wpis na blogu] [1] wyjaśnia to.
Okazuje się, że chociaż moduł userdir nie jest aktywnie używany, reszta plików stron znajduje się w moim folderze ~ / public_html, a php został wyłączony dla wszystkich tam zawartych.
Myślę, że to musiał być najnowszy dodatek do modułu php, który nie był obecny w moich ustawieniach Karmic.
źródło
/etc
są kopiowane żadne pliki (przynajmniej ktoś miał problem z/etc/init.d/apache2
tym, że nie został utworzony przy ponownej instalacji, tylko podczas czyszczenia + instalacji)php5.conf
plik w/etc/apache2/mods-enabled
ma kilka linii na dole, które utrzymują php z wykonaniem wnętrza katalogu użytkownika, więc w zależności od konfiguracji, może to być również Twój problem. Możesz po prostu skomentować te linie i przeładować apache2źródło