powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
34 сообщений из 34, показаны все 2 страниц
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749193
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня всем! Возникла следующая проблема.
Использую web-сервер Apache и БД MySQL на ОС Windows 2012.
Настроил на запуск скрипт cgi, который выполняет запрос из БД.
Скрипт отрабатывает локально (при запуске через командный файл) и на других web-серверах, но вот Apache не даёт подключиться к БД при запуске скрипта CGI (index.cgi).
Помогите настроить Apache для корректного запуска файла index.cgi.
Файл cgi отрабатывает корректно, т.е. сам Apache настроен на обработку скриптов, но вылетает именно на моменте, когда идёт открытие соединения к БД mySQL.
Этот же скрипт пробовал запускать на другом веб-сервера - отрабатывает корректно!
Что не так? )
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749198
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserITApache не даёт подключиться к БДКак не дает... Это ну совсем не апачево дело. В логах что?
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749287
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,

В логах следующее:
[Tue Dec 18 09:58:30.049595 2018] [cgi:error] [pid 2688:tid 964] [client *.*.*.*:58632] End of script output before headers: index.cgi

Такой момент обратил сейчас ещё.
В логах mySQL при УСПЕШНОМ обращении к базе из моего скрипта (если не через браузер) вот такой лог выдаётся:
"User@localhost on mybd using SSL/TLS"
<...>

А когда через браузер идёт обращение к скрипту в логах mySQL ничего не пишется... И это понятно,т.к. соединение обрубается на момент открытия.

Также от ошибки в логах Apache типа: " End of script output before headers..." - я избавляюсь, если полный скрипт браузеру подсовываю, где все заголовки страницы есть, а вот само подключение так и отваливается. Уже либо совсем без записей в лог Apache либо с ошибкой, что скрипт отработался с ошибкой.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749330
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserIT,

Получается, апач вполне нормально обращается к скрипту, запускает его, но не дожидается корректного ответа от скрипта. Скорее всего, cgi-скрипт аварийно завершает работу.
В принципе, родитель (в данном случае, вебсервер) может убить запущенный процесс, однако, он написал бы об этом в логе, скорее всего.
Связано ли это непосредственно с выполнением подключения к СУБД (открытие сокета, авторизация) или происходит раньше (например, при загрузке какой-то библиотеки, модуля и т.п.) - это не понятно. Наверно, только отладка скрипта прольет какой-то свет.
Что скрипт работает на другой машине - это, скорее всего, вполне можно объяснить различными версиями используемого ПО (могут быть какие-то зависимости с версиями библиотек, например) и/или различным окружением, правами доступа. Есть смысл попробовать сравнить. Возможно, для отладки проще написать тестовый скрипт.
Кроме того, на сервере могут быть настроены какие-то ограничения, например, по использованияю памяти или времени выполнения процесса - такие действия в системном логе должны быть отмечены.

UserITФайл cgi отрабатывает корректноЭто утверждение на чем основано, и речь идет о запуске на другом сервере или на проблемном? Если на проблемном - то запуск производится в тех же условиях (пользователь, окружение), что и при запуске от вебсервера или в иных?
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749338
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
На одной и той же машине ставил и Apache, потом его отключал, запускал другой веб-сервер (Tiny).
C Apache результат отрицательный, а с Tiny скрипт отработал.
Скрипт для отладки упростил до самого просто (открыть БД и запросить одну запись). На моменте ADOConnection.Open - скрипт отваливается.
Драйвера тоже пытался настроить по-разному и для 32бит и для 64 бит.
В пуле пользовательских и системных настроек (я про odbc), даже сделал и там и там один и тот же источник с одинаковым именем - не помогает.
Я копал ещё в скрипте, как открывается подключение...
Т.е. доходит до обращение к драйверу и тут отваливается, как будто его просто нет в системе...
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749340
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так и есть, скрипт аварийно завершает свою работу :)
На строке ADOConnection.Open.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749344
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkleUserIT,

UserITФайл cgi отрабатывает корректноЭто утверждение на чем основано, и речь идет о запуске на другом сервере или на проблемном? Если на проблемном - то запуск производится в тех же условиях (пользователь, окружение), что и при запуске от вебсервера или в иных?

Права и окружение тоже самое: на том же диске и на той же машине.
От Tiny запуск прошёл корректно, и с локального браузера и с удалённого.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749346
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может быть есть какой-то дебагер, который покажет, как происходило обращение к mySQL драйверу и на чём он отказался работать. Это же стандартная api-функция windows: "ADOConnection.Open".
Т.е. почему именно на Apache отключается - загадки, возможно идёт какой-то конфликт.
Сниферы портов все уже перепробовал: стандартные обращения по http... но доп. информации никакой не получил.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749357
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserITПрава и окружение тоже самое: на том же диске и на той же машине.
От Tiny запуск прошёл корректноОкружение посмотрите внимательно, сравните все переменные. Вебсерверы таки разные.

UserITНа строке ADOConnection.Open.UserITТ.е. доходит до обращение к драйверу и тут отваливается, как будто его просто нет в системе...Не в разрядности ли проблема? На винде для 32 и для 64 разные драйверы.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749431
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
Я пробовал разные драйвера 32- и 64бит, могу ещё раз для чистоты эксперимента настроить разные драйвера...
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749452
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
Сейчас ещё раз попробовал разные драйверы.
По идее мой скрипт должен работать с 32бит, но корректно отрабатывает, как с 32- так и с 64-бит, если запустить вне браузера.
Через браузер ни так и ни сяк.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749545
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserITСкрипт отрабатывает локально (при запуске через командный файл) и на других web-серверах, но вот Apache не даёт подключиться к БД при запуске скрипта CGI (index.cgi).
Я бы для начала в качестве CGI скрипта попробовал использовать shell скрипт. Потому что кто ж знает, что там за интерпретатор у твоего index.cgi...
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749655
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,
CGI на Delphi - консольное приложение.
у меня Windows... Если мне делать какой-то скрипт, тогда надо чтобы не требовало доп.установок... для эксперимента устанавливать на сервер доп.ПО не очень хочется.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749809
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserITCGI на Delphi - консольное приложение.Эх... Исходники то есть, хоть какая-то отладка возможна?

UserITу меня Windows...Это ещё ничего, это ещё жить можно. Вот на работе коллега говорит "у меня лапки" - вот тут уже всё.

UserITЕсли мне делать какой-то скрипт, тогда надо чтобы не требовало доп.установок... для эксперимента устанавливать на сервер доп.ПО не очень хочется.Ну дык худо-бедно в винде есть свой командный интерпретатор cmd.exe. Есть ещё вполне себе ничего VSH. О, для особых ценителей - почти штатный PowerShell.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749810
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот, вроде и не спросонок, а ляпнул не ту букву. Конечно, про WSH думал
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39749909
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkleЭх... Исходники то есть, хоть какая-то отладка возможна?
Конечно есть! )
я же говорю, что именно при открытии соединения к БД и появляется ошибка :)
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750061
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Господа!
Написал cgi на vbs.
Всё тоже самое. Только теперь Apache выдаёт ещё одну ошибку:
ADODB.Connection: \x8d\xa5 \xe3\xa4\xa0\xa5\xe2\xe1\xef \xad\xa0\xa9\xe2\xa8 \xe3\xaa\xa0\xa7\xa0\xad\xad\xeb\xa9 \xaf\xae\xe1\xe2\xa0\xa2\xe9\xa8\xaa. \x82\xa5\xe0\xae\xef\xe2\xad\xae, \xae\xad \xe3\xe1\xe2\xa0\xad\xae\xa2\xab\xa5\xad \xad\xa5\xaf\xe0\xa0\xa2\xa8\xab\xec\xad\xae.

Или что в перекодировании означает:
ADODB.Connection: Не удается найти указанный поставщик. Вероятно, он установлен неправильно.

(!)
Вот... т.е. изначально эта ошибка и выдавалась в моём оригинале, видимо. Но локально (запуская скрипт руками из этой же папки) скрипт отрабатывает верно...
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750095
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserIT,

Ожидаемо. Вот и смотрите внимательно окружение и права. При запуске ручками от имени рядового пользователя (включая администратора) оно одно получаются, при запуске из-под вебсервера (служба, да?) - другое.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750197
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
Все эти факторы максимально проверил:
1. Запускал Apache как службу,
2. Запускал Apache от вошедшего пользователя,
3. Запускал Apache от имени администратора,
4. Запускал Apache как службу от имени пользователя,
5. Настраивал ODBC для 32- и 64-разрядных систем...
Результата нет...
Где ещё копать даже не представляю :)
Какие ещё варианты посмотреть можно, есть идеи? :)
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750226
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserITКакие ещё варианты посмотреть можно, есть идеи? :)
Прекратить пляски с бубном и прочитать документацию Апача. Учётка и права с которыми он запускается, не имеет ничего общего с окружением и правами с которыми он запускает CGI.

А из-за последнего пункта - ещё и букварь по функционированию компьютеров. Разрядность бибилиотек жёстко определяется разрядностью приложения. Ну, заодно можно просветиться на предмет различий между User DSN и System DSN.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750235
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovНу, заодно можно просветиться на предмет различий между User DSN и System DSN.
Настройки User DSN и System DSN проверил в самом начале возникновения проблемы.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750243
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserITКакие ещё варианты посмотреть можно, есть идеи? :)Посмотрите http://httpd.apache.org/docs/2.4/mod/mod_suexec.html По крайней мере, если требуется лишь сменить пользователя.
Ну и то, от чего Вы всё время увильнуть пытаетесь, тоже можно настроить: http://httpd.apache.org/docs/2.4/mod/mod_env.html
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750520
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
Спасибо за ссылки! Но я это всё видел на других сайтах, но посмотрю ещё раз.
Сделал скрипт для просмотра переменных и окружения вебсервера.
Поможете разобраться, где что подкрутить? :)
Вот переменные CGI:

QUERY_STRING =
REQUEST_METHOD = GET
GATEWAY_INTERFACE = CGI/1.1
REMOTE_ADDR = *.*.196.31
REMOTE_PORT = 59849
REMOTE_HOST =
SERVER_NAME = *.*.196.31
SERVER_PORT = 80
SERVER_ADDR = *.*.*.*
SERVER_PROTOCOL = HTTP/1.1
SERVER_SOFTWARE = Apache/2.4.37 (Win32)
SCRIPT_NAME = /cgi-bin/index.cgi
SCRIPT_FILENAME = C:/www/root/html/cgi-bin/index.cgi
PATH_INFO =
PATH_TRANSLATED =
CONTENT_TYPE =
CONTENT_LENGTH =
AUTH_TYPE =
REMOTE_USER =
DOCUMENT_ROOT = C:/www/root/html/
SERVER_ADMIN = admin@example.com
SERVER
_SIGNATURE =
HTTP_CONNECTION = keep-alive
HTTP_ACCEPT_LANGUAGE = ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
HTTP_HOST = *.*.196.31
HTTP_USER_AGENT = Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
HTTP_ACCEPT = text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
HTTP_ACCEPT_LANGUAGE = ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
HTTP_ACCEPT_ENCODING = gzip, deflate
HTTP_ACCEPT_CHARSET =
HTTP_CONNECTION = keep-alive
HTTP_REFERER =
HTTP_X_FORWARDED_FOR =
QUERY_STRING_UNESCAPED =
REQUEST_URI = /cgi-bin/index.cgi
DOCUMENT_NAME =
DOCUMENT_URI =
LAST_MODIFIED =
DATE_LOCAL =
DATE_GMT =
SERVER_PROTOCOL = HTTP/1.1
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750523
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserIT,

Я дико извиняюсь за проблемы с моим зрением, но в этом списке никак не могу разглядеть виндовые переменные окружения, такие как %TMP%, %PATH%, ну и и ещё с десяток примерно стандартных, которые могут понадобятся консольному приложению для работы.
Или они гарантировано не понадобятся приложению и поэтому Вы их не приводите?
Или их просто нет?
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750536
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkleЯ дико извиняюсь за проблемы с моим зрением, но в этом списке никак не могу разглядеть виндовые переменные окружения, такие как %TMP%, %PATH%, ну и и ещё с десяток примерно стандартных, которые могут понадобятся консольному приложению для работы.
Или они гарантировано не понадобятся приложению и поэтому Вы их не приводите?
Или их просто нет?

При запуске скрипта из браузера эти переменные выводятся в основном пустыми:

APPDATA =
COMMONPROGRAMFILES =
COMPUTERNAME =
COMSPEC = C:\Windows\system32\cmd.exe
HOMEDRIVE =
HOMEPATH =
LOGONSERVER =
NUMBER_OF_PROCESSORS = 2
OS =
PATH =
PATHEXT = .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PROCESSOR_ARCHITECTURE =
PROCESSOR_IDENTIFIER =
PROCESSOR_LEVEL =
PROCESSOR_REVISION =
PROGRAMFILES =
SESSIONNAME =
SYSTEMDRIVE =
SYSTEMROOT = C:\Windows
TEMP =
TMP =
USERDOMAIN =
USERNAME =
USERPROFILE =


а вот если запустить консольное приложение тогда получаю примерно так:

TEMP = C:\Users\Alex\AppData\Local\Temp\2
TMP = C:\Users\Alex\AppData\Local\Temp\2
PATH = C:\Users\Alex\AppData\Local\Temp\2
ALLUSERSPROFILE = C:\ProgramData
APPDATA = C:\Users\Alex\AppData\Roaming
COMMONPROGRAMFILES = C:\Program Files (x86)\Common Files
COMPUTERNAME = Example
COMSPEC = C:\Windows\system32\cmd.exe
HOMEDRIVE = C:
HOMEPATH = \Users\Alex
LOGONSERVER = \\Example
NUMBER_OF_PROCESSORS = 2
OS = Windows_NT
PATH = Windows_NT
PATHEXT = .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PROGRAMFILES = C:\Program Files (x86)
SESSIONNAME = RDP-Tcp#32
SYSTEMDRIVE = C:
SYSTEMROOT = C:\Windows
TEMP = C:\Users\Alex\AppData\Local\Temp\2
TMP = C:\Users\Alex\AppData\Local\Temp\2
USERDOMAIN = Example
USERNAME = Alex
USERPROFILE = C:\Users\Alex
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750537
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserIT При запуске скрипта из браузера Может, при запуске каким-то веб-сервером? Так то, в браузере тоже ж можно выполнить запуск приложения. Ну... печально как-то выглядят значения... всего четыре переменных, да и из них половина не особо существенных.

UserIT а вот если запустить консольное приложение Аха, ну вот тут уже картинка вполне себе ничего.

Остался ещё один вариант "А вот ежле запустить из-под другого вебсервера, где приложение работает...".
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750655
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,
Да, есть отличия.
Внизу приложил только те строки, которые отличаются.
Сейчас в Apache задал пачку переменных, которые отличаются...

Ура! Два отладочных скрипта отработали!!! :)

Сейчас буду исключать некоторые из Apache, чтобы понять, на чём был затык и уже потом отлаживать свой рабочий скрипт.
Пока так-то не совсем понятно, что именно сыграло роль.
В основном задавал только пути типа TMP и т.д.
Основные отличия увидел в том, что SERVER_PORT отличается почему-то и SERVER_NAME, но их в Apache я не трогал.
Чуть позднее выложу результаты трудов :)

Спасибо за ценные советы!


Apache
REMOTE_PORT = 60276
REMOTE_HOST =
SERVER_NAME = *.*.196.31
SERVER_PORT = 80
SERVER_ADDR = *.0.0.*
SCRIPT_FILENAME = C:/www/root/html/cgi-bin/index.cgi
PATH_INFO =
PATH_TRANSLATED =
CONTENT_LENGTH =
DOCUMENT_ROOT = C:/www/root/html/
SERVER_ADMIN = admin@example.com
HTTP
_CONNECTION = keep-alive
HTTP_ACCEPT_LANGUAGE = ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
HTTP_CONNECTION = keep-alive
REQUEST_URI = /cgi-bin/index.cgi
TEMP = C:/Users/Alex/AppData/Local/Temp/2
TMP = C:/Users/Alex/AppData/Local/Temp/2
PATH =
ALLUSERSPROFILE =
APPDATA =
COMMONPROGRAMFILES =
COMPUTERNAME =
COMSPEC = C:\Windows\system32\cmd.exe
HOMEDRIVE =
HOMEPATH =
LOGONSERVER =
NUMBER_OF_PROCESSORS = 2
OS =
PROCESSOR_ARCHITECTURE =


Not Apache
REMOTE_PORT =
REMOTE_HOST = *.*.196.31
SERVER_NAME = RITLABS S.R.L.
SERVER_PORT = 27883
SERVER_ADDR =
SCRIPT_FILENAME =
PATH_INFO = /index.cgi
PATH_TRANSLATED = e:\monroe\www\root\html\index.cgi
CONTENT_LENGTH = 0
DOCUMENT_ROOT =
SERVER_ADMIN =
HTTP_CONNECTION =
HTTP_ACCEPT_LANGUAGE = ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
HTTP_CONNECTION =
REQUEST_URI =
TEMP = C:\Users\Alex\AppData\Local\Temp\2
TMP = C:\Users\Alex\AppData\Local\Temp\2
PATH =
ALLUSERSPROFILE = C:\ProgramData
APPDATA = C:\Users\Alex\AppData\Roaming
COMMONPROGRAMFILES = C:\Program Files (x86)\Common Files
COMPUTERNAME = Example
COMSPEC = C:\Windows\system32\cmd.exe
HOMEDRIVE = C:
HOMEPATH = \Users\Alex
LOGONSERVER = \\Example
NUMBER_OF_PROCESSORS = 2
OS = Windows_NT
PROCESSOR_ARCHITECTURE = AMD64
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750676
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В итоге вот строка в Apache, которая запустила корректную отработку скрипта:

Код: powershell
1.
2.
3.
4.
5.
<IfModule env_module>

SetEnv COMMONPROGRAMFILES "C:\Program Files (x86)\Common Files"

</IfModule>



или так тоже прокатывает:

Код: powershell
1.
2.
3.
4.
5.
<IfModule env_module>

SetEnv COMMONPROGRAMFILES "C:/Program Files (x86)/Common Files"

</IfModule>
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750685
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И если кому интересно:

Для VBScript на 64-разрядной ОС нужно использовать 64-разрядный драйвер в системном DSN и нужно поставить всё-таки:

Код: powershell
1.
2.
3.
4.
5.
<IfModule env_module>

SetEnv COMMONPROGRAMFILES "C:/Program Files/Common Files"

</IfModule>




Для *.cgi на Delphi нужно использовать только 32-разрядный драйвер и строку:

Код: powershell
1.
2.
3.
4.
5.
<IfModule env_module>

SetEnv COMMONPROGRAMFILES "C:/Program Files (x86)/Common Files"

</IfModule>
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750688
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserITВ основном задавал только пути типа TMP и т.д.Вообще, есть смысл при старте приложения проверять минимально необходимое окружение и по возможности выставлять нужные значения или формировать сообщение об ошибке. Как это в делфи принято и делается ли вообще - это я без понятия.

UserITили так тоже прокатывает:

Код: powershell
1.
<IfModule env_module>

Прокатывает ровно до тех пор, пока установлен и подключен соответствующий модуль Апача :)
В общем и целом, костыль это, конечно.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750689
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserITДля *.cgi на Delphi нужно использовать только 32-разрядный драйверВероятно, приложение 32-разрядное.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750707
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkleUserITВ основном задавал только пути типа TMP и т.д.Вообще, есть смысл при старте приложения проверять минимально необходимое окружение и по возможности выставлять нужные значения или формировать сообщение об ошибке. Как это в делфи принято и делается ли вообще - это я без понятия.

UserITили так тоже прокатывает:

Код: powershell
1.
<IfModule env_module>

Прокатывает ровно до тех пор, пока установлен и подключен соответствующий модуль Апача :)
В общем и целом, костыль это, конечно.

О! Вот это очень ценный совет!
Спасибо!
В своём cgi уже настроил необходимое окружение, а в Apache уже эти строчки убрал :)
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750713
UserIT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ещё получается, если Apache, как службу запускать, то необходимо от имени пользователя :(
От системной учётки не удалось настроить отработку CGI...
Тоже получается - костыль.
...
Рейтинг: 0 / 0
Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
    #39750726
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UserITЕщё получается, если Apache, как службу запускать, то необходимо от имени пользователя :(
От системной учётки не удалось настроить отработку CGI...Ну как сказать... suexec умеет запускать cgi-скрипты от имени указанного пользователя и группы. По крайней мере, на никсах работает.
Апач выполняется от имени системного пользователя, а скрипты запускаются от рядовых пользователей. На хостингах довольно распространенный способ.
...
Рейтинг: 0 / 0
34 сообщений из 34, показаны все 2 страниц
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Настройка Apache для выполнения запроса к БД MySQL через скрипт CGI
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]