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

Ваш аккаунт

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

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

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

IntraWeb и Apache. Как использовать файл .so?

63K
27 ноября 2011 года
Illiren
19 / / 13.03.2011
Здравствуйте. В Delphi с помощью IntraWeb создал проект HelloWorld. На выходе получил файл .so. Как его использовать (просматривать)? Попробовал на тестовой страничке сделать ссылку на этот файл, но тогда браузер его не открывает (запускает?), а закачивает. Веб-сервер стоит Apache 2.2.19. Опыта работы с ним нет, только один виртуальный каталог сделал. Может файл нужно в директории Apache ложить и прописывать в httpd.conf? Но тогда как его открыть ссылкой с тестовой странички?
4.7K
27 ноября 2011 года
bobik02
140 / / 11.09.2007
Для начала видимо надо подгрузить ваш модуль
 
Код:
LoadModule /modules/модуль.so

Затем наверное задать SetHandler.
Перезапустить апач.

А как использовать, ну это уже вам лучше знать.
63K
27 ноября 2011 года
Illiren
19 / / 13.03.2011
Хорошо. Сейчас подключу.
В проекте на форме лежит компонент TIWLabel с надписью "Hello world". Как сделать так, чтобы при переходе по какой-нибудь ссылке на страничке в браузере увидеть эту надпись?
Модуль so ведь должен мне сгенерить страницу с одной единственной надписью, правильно я понял?
63K
27 ноября 2011 года
Illiren
19 / / 13.03.2011
Что значит ошибка:
Цитата:
httpd.exe: Syntax error on line 131 of C:/Apache2/conf/httpd.conf: Cannot load C:/Apache2/modules/IWDSOProject.so into server: \xcd\xc5 \xed\xe0\xe9\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc


Я неправильно подключил модуль?

 
Код:
LoadModule mymodule "modules/IWDSOProject.so"
14
27 ноября 2011 года
Phodopus
3.3K / / 19.06.2008
надо настроить апач так, чтобы он "хендлил" ссылки определенного вида с помощью вашей библиотеки. Ну и этот so хоть скорее всего и для апача, но вообще зависит от настроек проекта.

настройка примерно такая
LoadModule ИмяПроекта_module(имя_экспортируемой_функции) путь_и_имя_библиотеки
<Location /путь_в_браузере>
SetHandler имя_модуля_без_расширения_в_нижнем_регистре-handler
</Location>
63K
28 ноября 2011 года
Illiren
19 / / 13.03.2011
А может ли ошибка быть связана с тем, что у меня Apache стоит на Windows? Для Windows - dll, а для Unix - so?
Попробую dll скомпилить и подключить.
Хотя, нет, я ступил. Файлы so, которые шли с Apache, нормально подгружаются. Значит в моем проекте проблема.
Цитата:
настройка примерно такая
LoadModule ИмяПроекта_module(имя_экспорт


Phodopus, куда нужно вписать эту настройку? В файл httpd.conf? Что за "(имя_экспорт"?

63K
28 ноября 2011 года
Illiren
19 / / 13.03.2011
[SIZE="4"]УРА!!! Заработало!!![/SIZE] :D
Ошибка была из-за того, что скомпилированный файл so не подходил к Apache 2.2.19. Я использовал IntraWeb в Delphi 7, а с ним можно делать модули к Apache 2.0.x. Здесь Apache 2.2.x modules with Delphi вычитал, что нужно исправить файл HTTPD2.pas, и нужно каждый раз к новому проекту подключать этот файл и файлы ApacheTwoApp.pas и ApacheTwoHTTP.pas, тогда модуль so будет подходить к Apache 2.2.x.
[ATTACH]5424[/ATTACH] [SIZE="1"](Какая-то загрузка файлов непонятная :confused:)[/SIZE]

Затем нужно настроить Apache, как писали bobik02 и Phodopus.

У меня:
Имя проекта: IWDSO2Project
Имя экспорт: IWDSO2Project_module

В файл httpd.conf добавил следующие строки:
 
Код:
LoadModule IWDSO2Project_module "modules/IWDSO2Project.so"
<Location /IWDSO2Project>
SetHandler IWDSO2Project-handler
</Location>


Из браузера обращаться: localhost/IWDSO2Project

Спасибо!!!
14
28 ноября 2011 года
Phodopus
3.3K / / 19.06.2008
Цитата: Illiren
Что за "(имя_экспорт"?


Оу.. Целый кусок моего сообщения вырезали. А когда отправлял - был на месте...

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