Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Apache 2: php5 как cgi-приложение... как модуль работает, как cgi-нет... 
V
    Опции темы
CyraxZ
Дата 20.9.2008, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 10.12.2006

Репутация: нет
Всего: нет



До настоящего момента работал с php, установленным в качестве модуля. Всё нормально работало.
Возникла необходимость работы с php как с cgi-приложением. Для этой трансформации
я в файле httpd.conf заменил строки
Код

AddType application/x-httpd-php phtml php 
LoadModule php5_module "C:/GPL/PHP/php5apache2_2.dll 

на строки
Код

AddType application/x-httpd-php phtml php  
<Directory "C:/GPL/PHP/">   
  Options ExecCGI   
</Directory>   
ScriptAlias "/php_dir/" "C:/GPL/PHP/"   
Action application/x-httpd-php "/php_dir/php-cgi.exe" 

так, как было указано в двух статьях из инета.

Но при этом браузер выводит ошибку
Цитата

FORBIDDEN. You don't have permission to access /php_dir/php-cgi.exe/index.php on this server. 

Странно, почему здесь фрагмент /php_dir/ не заменён на C:/GPL/PHP/...

Если убрать ScriptAlias
Код

AddType application/x-httpd-php phtml php  
<Directory "C:/GPL/PHP/">   
  Options ExecCGI   
</Directory>   
Action application/x-httpd-php "C:/GPL/PHP/php-cgi.exe" 

выводится уже другая ошибка:
Цитата

NOT FOUND. The requested URL /GPL/PHP/php-cgi.exe/index.php was not found on this server. 

А здесь уже куда-то-то исчез фрагмент "C:/"...

Одним словом, не работает. Может, где ещё чего изменить ?
PM MAIL   Вверх
CyraxZ
Дата 20.9.2008, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 10.12.2006

Репутация: нет
Всего: нет



Проблема решена. Достаточно было внутри конструкции Directory указать Allow from all,
что означает разрешение доступа к этой папке с любых ip-ников:
Код
AddType application/x-httpd-php phtml php 
<Directory "C:/GPL/PHP/">  
  Allow from all
  Options ExecCGI  
</Directory>  
ScriptAlias "/php_dir/" "C:/GPL/PHP/"  
Action application/x-httpd-php "/php_dir/php-cgi.exe"


В файле httpd.conf были описаны свойства корневой папки следующим образом:
Код
<Directory />
    Options FollowSymLinks Includes Indexes
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

Т.е. на все папки (на все подпапки корневой папки) по умолчанию был установлен запрет
доступа для всех ip-ников. Этот запрет по умолчнию распространялся на все папки, описанные
в httpd.conf , включая C:/GPL/PHP.
Поэтому, необходимо было установить разрешение Allow from all либо в описании корневой папки, либо в описании папки C:/GPL/PHP.

Цитата

Странно, почему здесь фрагмент /php_dir/ не заменён на C:/GPL/PHP/...

А замена фрагменов по ScriptAlias'у, судя по всему, происходит после получения доступа к папке, поэтому в сообщении об ошибке указан /php_dir/, а не C:/GPL/PHP/
PM MAIL   Вверх
Nigel
Дата 20.9.2008, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


познаю мир
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 20.11.2007

Репутация: 7
Всего: 19



Пока писал, проблема уж решилась smile 

Это сообщение отредактировал(а) Nigel - 20.9.2008, 18:39
PM MAIL   Вверх
CyraxZ
Дата 20.9.2008, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 10.12.2006

Репутация: нет
Всего: нет



 smile 

Это сообщение отредактировал(а) CyraxZ - 21.9.2008, 07:48
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема »


 




[ Время генерации скрипта: 0.0408 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.