Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программное обеспечение Linux и FreeBSD (http://forum.oszone.net/forumdisplay.php?f=11)
-   -   отрубается php на httpd!! help! (http://forum.oszone.net/showthread.php?t=49990)

sub 01-06-2005 22:33 329344

отрубается php на httpd!! help!
 
уже второй раз за месяц неожиданно отрубается на апаче поддержка пхп

или как это назвать

в общем если открывать файлы типа http://ip-address/index.php
то броузер предлагает сохранить этот файл :(
а не компилирует его и показывает станицу

версии ПО:
apache 2.0.50
php 4.3.8

перезагруска всего Мандраке 10.1 не помогает

в прошлый раз само как-то прошло

помогите :(

sub 01-06-2005 22:51 329349

вот тут похожая проблема обсуждалась
http://forum.oszone.net/showthread.p...ght=apache+php
http://forum.oszone.net/showthread.p...&highlight=php
но ни к чему они так и не пришли

mar 02-06-2005 00:09 329368

sub
1) В тех случаях php - скрипты изначально не показывались. А в Вашем, насколько японимаю, то показываются, то нет???
2) php, или mod_php?
3) Что будет при попытке в консоли задать команду
Код:

php путь_к_файлу/index.php
4) Ну и так, на всякий случай:
Код:

cat httpd.conf |grep php
5) делаем test.php
Код:

<?php
    phpinfo();
?>

и пробуем запустить его через апач и из командной строки.
ждем результатов.
а вот хотелось бы мне знать, зачем народ ставит второй апач? острых ощущений хочется? :cool:

sub 02-06-2005 01:41 329387

Вложений: 1
так. уже всё заработало нормально.
прям мистика какая-то

1) это верно. у меня всё изначально нормально работало. и вот уже за 2 месяца работы сервера 2 раза проподала поддержка пхп
2)скорее всего mod_php(/var/www/html/addon-modules/apache2-mod_php-2.0.50_4.3.8)
3) ничего не будет. нету такой команды.
4)

[user@host]# cat /etc/httpd/conf/commonhttpd.conf | grep php
DirectoryIndex index.html index.html.var index.php index.php3 index.shtml index.cgi index.pl index.htm Default.htm default.htm index.xml
AddIcon /icons/p.png .pl .py .php .php3

[user@host]# cat /etc/httpd/conf/httpd.conf | grep php
# cgi or php files


5) см. файл t.txt
как t.html

это то что выдал апаче.
через командную строку не получается. т.к. нету такой команды как php

sub 02-06-2005 01:42 329388

но хотелось бы разобраться с этим делом. такие приколы никак не катят

TbMA 02-06-2005 02:59 329398

3) значит в путях ее нет, скорее всего. можно поискать

find / -name php

4) значит есть еще конфигурашки где загружается собственно модуль, и добавляется расширение. Там чего написано?

.. 6) Смотрел логи индейца?

IgorK 02-06-2005 11:35 329490

У меня такое было, когда я пользовался Konqueror (и почему никто браузер не вспоминает?) и где-то в MIME-типах указал, что делать с .php файлами, а именно - редактировать. И получил сразу окошко "Сохранить", вместо просмотра страницы собственно.

----
Йода: Комп свой отдать ты мне хочешь.
Хакер: бери, у меня еще есть...

sub 02-06-2005 12:19 329507

IgorK

пользователи юзают IE. они то мне и сообщили о такой проблеме. я захожу FireFox-ом и у меня тоже самое. просит сохранить php файл.
потом когда php начал работать, но тормознуто работал. потом как-то разогнался.

может тут проблемы просто с оперативной памятью(у меня её только 256МБ)?
хотя Своп вроде есть(512МБ), но редко когда используется.
но когда на серваке хоть какой-то народ есть, то свбодной оперативки что-то вроде 200 КБ.


в основном пользуются форумом. поэтому процессов httpd2 порядко 10 запущено бывает.

и ещё... раньше сервак вообще частично зависал(по разу в день). например через себя NAT трафик пропускал. но http не отвечал, через ssh нельзя было законектиться и даже консоль подвисала(т.е. монитор и клава сервака).
порылся в логах и нашёл что перед зависанием сервака postfix пытается пользователям форума выслать на почту какую-то шнягу. а у сервака выхода в инет вобще нет. поэтому постфикс не нужен. я удаляю postfix из начальной загрузки и эти частичные подвисания прекращаются.

sub 02-06-2005 13:31 329517

TbMA
3) slocate /php находит
/etc/php.d
/etc/php.d/34_mysql.ini
/etc/php.d/23_gd.ini
/etc/php.d/26_imap.ini
/etc/php.d/27_ldap.ini
/etc/php.d/39_pgsql.ini
/etc/php.d/41_readline.ini
/etc/php.ini
/usr/share/mc/syntax/php.syntax
/usr/lib/php
/usr/lib/php/extensions
/usr/lib/php/extensions/imap-static.so
/usr/lib/php/extensions/gd.so
/usr/lib/php/extensions/mysql.so
/usr/lib/php/extensions/imap.so
/usr/lib/php/extensions/ldap.so
/usr/lib/php/extensions/pgsql.so
/usr/lib/php/extensions/readline.so



4) вот что ещё нашёл
[user@host httpd]# pwd
/etc/httpd

[user@host httpd]# ls
2.0/ conf/ conf.d/ extramodules@ logs@ webapps.d/

[user@host httpd]# cd conf.d

[user@host conf.d]# pwd
/etc/httpd/conf.d

[user@host conf.d]# ls
00_manual.conf 40_mailman.conf 41_mod_ssl.default-vhost.conf 56_mod_disk_cache.conf 70_mod_php.conf
30_mod_proxy.conf 40_mod_ssl.conf 55_mod_cache.conf 69_mod_suexec.conf 75_mod_perl.conf

[user@host conf.d]# cat 70_mod_php.conf
<IfDefine HAVE_PHP4>
<IfModule !mod_php4.c>
LoadModule php4_module extramodules/mod_php4.so
</IfModule>
</IfDefine>

<IfModule mod_php4.c>
PHPINIDir /etc
</IfModule>

<IfModule mod_mime.c>
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .php4
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php-source .phps
</IfModule>

sub 02-06-2005 14:08 329527

TbMA

если смотреть access_log то там всё окей

вот это когда php не открывался, а скачивался:
192.168.8.26 - - [01/Jun/2005:22:22:52 +0400] "GET /visitors.php HTTP/1.1" 200 181 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.
1; en-US; rv:1.7.6) Gecko/20050317 Firefox/1.0.2"

тут и видно, что скачивался файл. т.к. размер файла visitros.php и есть 181 байт

а вот здесь открывалась уже страница генерируемая visitors.php
192.168.8.26 - - [01/Jun/2005:23:24:54 +0400] "GET /visitors.php HTTP/1.1" 200 4659 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Wi
ndows NT 5.1; SV1; .NET CLR 1.1.4322)"



IgorK 03-06-2005 05:26 329724

Хакер, однако, в сети или что еще подобное...

FrIcE 03-06-2005 11:13 329780

А почему в конфиге апача нет строчки
Код:

AddType                        application/x-httpd-php ".php"
Без неё апач НЕ будет передавать php файлы интерпретатору, соответственно они уходят напрямую клиенту.

sub 03-06-2005 18:50 329865

FrIcE

как это нету?
"AddType application/x-httpd-php ".php""


а вот это разве не то?
<IfModule mod_mime.c>
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .php4
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php-source .phps
</IfModule>

mar 03-06-2005 20:36 329890

FrIcE
это второй апач - у него некоторые вещи в конфиге не на привычных местах

sub
если опять будет дурить, попробуйте половить в это время загрузку сервера (например - top).

А может быть дело все-таки именно во втором апаче (вернее в директиве MultiViews): вот, почитайте: по запросу в гугле (apache2+php+problems) вылезла иетересная статья: Apache 2 and PHP (mod_php) on Linux. Вот, в частности, что там говорится:
Цитата:

# Add these directives are in /usr/local/apache/conf/httpd.conf (if already there, verify they are correct):

# Make sure there's only **1** line with this directive:
LoadModule php4_module modules/libphp4.so

# Add index.php to your DirectoryIndex line:
DirectoryIndex index.html index.php

# Uncomment one of the following (but not both)
# Use for PHP 4.x:
AddHandler php-script php
# Use for PHP 5.x:
#AddHandler php5-script php

AddType text/html php

# PHP Syntax Coloring
# (optional but useful for reading PHP source for debugging):
AddType application/x-httpd-php-source phps


Note 1: The php documentation recommends AddType application/x-httpd-php php instead of the above. However, it causes problems with the "MultiViews" feature of HTTP. That is, if the .php extension is left off a URL, and with certain browser Accept headers, Apache will not know .php (application/x-httpd-php) is HTML and will return a 406 Not Acceptable error. Using the AddType and AddHandler as shown above fixes this problem. For details see Mark Tranchant's webpage, "Using Apache's MultiViews with PHP whilst avoid 406 errors," and PHP bug 28023.

Note 2: PHP Syntax coloring isn't required, but it's very nice for looking at your php source while debugging. Here's an example.

Note 3: just for completeness I'll mention that you should be able to use SetOutputFilter / SetInputFilter instead of AddType, but you can't use both. However, SetOutputFilter / SetInputFilter no longer works for me. It used to work with an earlier PHP 4.x or Apache 2 version, but not with Apache 2.0.47/PHP 4.3.3. I understand this (PHP as an Apache 2 filter) is experimental, so I don't use it anymore:

<Files *.php>
SetOutputFilter PHP
SetInputFilter PHP
</Files>
MultiViews определять представление ресурса в зависимости от предпочтений клиента (тип носителя, язык, набор символов кодировка).
Цитата:

Механизм MultiViews позволяет выбрать из имеющихся файлов, имена которых начинаются с локальной части URI, наиболее подходящий на основе типа, языка, набора символов и метода кодирования, определяемых модулем mime по суффиксам файлов
(Bog BOS: Apache 2: HTTP сервер. Установка, настройка) - так что тут действительно могут быть проблемы.
Вариант лечения - отрубить этот самый MultiViews, или попробовать прописать все про mime-типы php, как выше.

IgorK 17-07-2005 11:44 341674

Лучший хакер - админ сервера, который не ведет журнал модификаций конфигурации и не делает архивов.


Время: 20:17.

Время: 20:17.
© OSzone.net 2001-