Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

php 3 + apache

5.6K
13 декабря 2003 года
romizzz1
5 / / 11.12.2003
Никак не могу заставить работать php3 вместе с Apache. Помогите пожалуйста, кто знает. Мучаюсь уже несколько дней. Сначало вообще ничего не работало. Потом я прочитал кучу литературы на вебе и кое что стало получаться, но все равно не так как надо. Ситуация следующая:

Если пишу в броузере:
http://localhost/path-to-php/php.exe/path-to-test-file/test.php3
то в этом случае браузер выдает то, что нужно(а именно "hello world" на пустом листе :)))

Если же пишу:
http://localhost/path-to-test-file/test.php3
то ничего не работает, хотя должно.

Кстати индексовая страничка (index.php) тоже выдается как обычный html, как будто в ней совсем нету PHP кода.

Не понимаю, как заставить браузер интерпретировать *.php файла как надо, без явного указания программы php.exe. Может с конфигом в Apache чего-то неладно. Народ, выручайте, а то у меня голова лопнет с этим php. Заранее благодарен.
239
13 декабря 2003 года
Dolonet
1.7K / / 20.05.2000
У меня все работает отлично. В httpd.conf в самом конце содержится следующее:
 
Код:
# PHP 3 settings
AddType application/x-httpd-php3 php3
ScriptAlias /_php3/ "/usr/local/php3/"
Action application/x-httpd-php3 "/_php3/php.exe"


Больше никаких упоминаний о php.exe ни в Apache, ни в других местах нет. Попробуй сделать так.
1.8K
13 декабря 2003 года
MishaSt
170 / / 11.08.2003
Цитата:
Originally posted by Dolonet
У меня все работает отлично. В httpd.conf в самом конце содержится следующее:
 
Код:
# PHP 3 settings
AddType application/x-httpd-php3 php3
ScriptAlias /_php3/ "/usr/local/php3/"
Action application/x-httpd-php3 "/_php3/php.exe"


Больше никаких упоминаний о php.exe ни в Apache, ни в других местах нет. Попробуй сделать так.



Такая конфигурация неправильная:
http://localhost/_php3/php.exe?c:\autoexec.bat
Но это цветочки, если добраться до файлов логов, то можно будет выполнять произвольный код.
Вот, как надо:
......
#LoadModule headers_module modules/mod_headers.so
#LoadModule usertrack_module modules/mod_usertrack.so
#LoadModule unique_id_module modules/mod_unique_id.so
LoadModule php4_module c:/Programs/php/sapi/php4apache.dll
.......
#AddModule mod_headers.c
#AddModule mod_usertrack.c
#AddModule mod_unique_id.c
AddModule mod_so.c
AddModule mod_setenvif.c
AddModule mod_php4.c
........
<IfModule mod_mime.c>

#
# AddType allows you to tweak mime.types without actually editing it, or to
# make certain files to be certain types.
#
AddType application/x-tar .tgz
AddType application/x-httpd-php .php4
AddType application/x-httpd-php .php
......

239
13 декабря 2003 года
Dolonet
1.7K / / 20.05.2000
Это, я подразумевал, уже итак ясно %))

По-моему, главное, чтобы работало :)
5.6K
13 декабря 2003 года
romizzz1
5 / / 11.12.2003
Цитата:
Originally posted by Dolonet
Это, я подразумевал, уже итак ясно %))

По-моему, главное, чтобы работало :)



у меня в принципе то же самое и было написано, только тип я добавлял в mime.types, а не в httpd.conf. Но я сделал точно как ты написал, все равно не пашет. Вернее, если я явно путь к php.exe указываю, то работает, конечно, но сам подцеплять php3 файлы Apache почему-то не хочет.

5.6K
13 декабря 2003 года
romizzz1
5 / / 11.12.2003
Цитата:
Originally posted by MishaSt


Такая конфигурация неправильная:
http://localhost/_php3/php.exe?c:\autoexec.bat
Но это цветочки, если добраться до файлов логов, то можно будет выполнять произвольный код.
Вот, как надо:
......
#LoadModule headers_module modules/mod_headers.so
#LoadModule usertrack_module modules/mod_usertrack.so
#LoadModule unique_id_module modules/mod_unique_id.so
LoadModule php4_module c:/Programs/php/sapi/php4apache.dll
.......
#AddModule mod_headers.c
#AddModule mod_usertrack.c
#AddModule mod_unique_id.c
AddModule mod_so.c
AddModule mod_setenvif.c
AddModule mod_php4.c
........
<IfModule mod_mime.c>

#
# AddType allows you to tweak mime.types without actually editing it, or to
# make certain files to be certain types.
#
AddType application/x-tar .tgz
AddType application/x-httpd-php .php4
AddType application/x-httpd-php .php
......



а что там насчет AddModule? Можно попробовать, только, где мне эти модули взять (mod_php4.c, php4apache.dll)? кстати у меня не php4 а php3. Будут ли какие-нибудь изменения в этом случае?

1.8K
13 декабря 2003 года
MishaSt
170 / / 11.08.2003
Скажу по секрету у иеня на домашнем компе phpRemoteView не запороленный лежит. То домашний комп, если кто начнёт ломать, то я замечу, а если и незамечу, то и не очень страшно. Так что номано и так... Ну так вот. Смысл такой. Когда ты делаешь
Action some-type "/someurl/somescript.cgi"
То соответственно при обращении к файлу типа some-type соответственно somescript.cgi и выполняется c параметром имя твоего файла.
ScriptAlias /_php3/ "C:/php3/"
юзается, что мол, URL-директория /_php3/ распологается не в "DOCUMENT_ROOT/_php3/", а в "С:/php3/". Где DOCUMENT_ROOT, ну то что написано у тебя в конфиге как DOCUMENT_ROOT. (В апаче, и в PHP слеши ставятся в другую сторону, не так, как в винде).
С типом тоже вроде ты всё понял. Вот и думай, где ошибся.
А про вариант мой. Так это... файл mod_php4.c не надо, он внутри той DLL. Это модуль добавляется а не файл. Только он наверное называется mod_php.c
А файл-DLL должен в дире с php лежать. У меня он в дире с php в дире sapi.
Итак:
1. Что выводит(что не работает).
2. Версии апача и ПХП
3. Что в логи валится
4. Куть из конфигов участки, что писал.
5. Директории все напиши: где PHP, где апач, где DOCUMENT_ROOT и т.д
Вообщем проверь, правильно ли ты всё написал, может php3 в миме-типах написал, а выполнить хочешь .php Может директорию неправильно написал в ScriptAlias'e. Может в мимах один тип, а в Action уже другой. Вообщем проверь всё.
5.6K
13 декабря 2003 года
romizzz1
5 / / 11.12.2003
Спасибо огромное. Все заработало, хотя, я не до конца понимаю свою ошибку.

У меня в конфиге было прописано
ScriptAlias /_php_/ "d:/internet/usr/php3"
Action application/x-httpd php3 "/_php_/php.exe"

Ты написал, что alias надо использовать если php.exe находится не в DOCUMENT_ROOT, а у меня DOCUMENT_ROOT = "d:/internet". Так что вроде как получается что ScriptAlias убрать можно. В общем я заменил эти две строки на

Action application/x-httpd-php3 "/usr/php3/php.exe"

и все закончилось хорошо :):):)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог