IntraWeb и Apache. Как использовать файл .so?
Здравствуйте. В Delphi с помощью IntraWeb создал проект HelloWorld. На выходе получил файл .so. Как его использовать (просматривать)? Попробовал на тестовой страничке сделать ссылку на этот файл, но тогда браузер его не открывает (запускает?), а закачивает. Веб-сервер стоит Apache 2.2.19. Опыта работы с ним нет, только один виртуальный каталог сделал. Может файл нужно в директории Apache ложить и прописывать в httpd.conf? Но тогда как его открыть ссылкой с тестовой странички?
Код:
LoadModule /modules/модуль.so
Затем наверное задать SetHandler.
Перезапустить апач.
А как использовать, ну это уже вам лучше знать.
В проекте на форме лежит компонент TIWLabel с надписью "Hello world". Как сделать так, чтобы при переходе по какой-нибудь ссылке на страничке в браузере увидеть эту надпись?
Модуль so ведь должен мне сгенерить страницу с одной единственной надписью, правильно я понял?
Цитата:
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"
настройка примерно такая
LoadModule ИмяПроекта_module(имя_экспортируемой_функции) путь_и_имя_библиотеки
<Location /путь_в_браузере>
SetHandler имя_модуля_без_расширения_в_нижнем_регистре-handler
</Location>
Попробую dll скомпилить и подключить.
Хотя, нет, я ступил. Файлы so, которые шли с Apache, нормально подгружаются. Значит в моем проекте проблема.
Цитата:
настройка примерно такая
LoadModule ИмяПроекта_module(имя_экспорт
LoadModule ИмяПроекта_module(имя_экспорт
Phodopus, куда нужно вписать эту настройку? В файл httpd.conf? Что за "(имя_экспорт"?
Ошибка была из-за того, что скомпилированный файл 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>
<Location /IWDSO2Project>
SetHandler IWDSO2Project-handler
</Location>
Из браузера обращаться: localhost/IWDSO2Project
Спасибо!!!
Цитата: Illiren
Что за "(имя_экспорт"?
Оу.. Целый кусок моего сообщения вырезали. А когда отправлял - был на месте...