Люди помогите ,как заставить работать скрипты питона? По шагам если можно.
Вид для печати
Люди помогите ,как заставить работать скрипты питона? По шагам если можно.
Поставили Вэб сервер
Поставили Питон
Положили скрипты в папку CGI-BIN сервера.
всё.
выдаёт такую ошибку:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, localhost@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
что за сервер?
и вообще подробнее плс :)
какой скрипт, запущен SQL сервер? и тп...
Всё работает под Apache 2.0.47 . SQL серверы запущены (FireBird и MySQL, если интерестно:) )(в списке сервисов они видны), далее питон установлен (+2 дополнения этих модули Egenix-mx и KinterbasDB), скрипты все не работают (даже для перла, тоже самое выводит)...вот собственно и всё:)
2 VGV:
Посмотрел что там во вкладке Data.
Во всех полях красными буквами: <null>
То же самое и в остальных таблицах. Кроме PLANES, RANG, SQUAD, AWARDS. Т.е. кроме тех, что уже были заполнены.
Как узнать, соединяется ли Демон с базой вообще? Он в любом случае посылает sql-серверу команды. Даже если в конфиге указать неверный пароль к базе, сообщения об этом в консоли Демона не наблюдается.
Захожу на сервер, выбираю самолет, разбиваюсь. Смотрю в консоль Демона - там вроде как промелькали команды добавления записи в базу. Смотрю в IB-Expert - в таблице ID_PLAYERS как было <null> во всех полях, так и осталось.
Вот такой конфиг у Демона:
ip = 172.19.7.65
path = c:\Il2FBServer\il2server.exe
password = 12345
sql username = (логин)
sql password = (пароль)
sql type = firebird
sql database = fbdstats.gdb
dmg app=C:\fbmission\FBMission.exe
dmg folder=fbm
А вот это что нибудь значит? Я полагаю, что красный шрифт - он всегда не с проста :)
Надо, надо. Собственно, сейчас запущен последний набор карт и fbmission, которые в данный момент работает на Геннадиче-0 (как я полагаю :) )Цитата:
Originally posted by VGV
так тебе карты и всё такое прочее не надо, только личный стат? можно отрезать лишнее...
я даже растерялся :)...незнаю, раз даже перл...Цитата:
Originally posted by Driver
Всё работает под Apache 2.0.47 . SQL серверы запущены (FireBird и MySQL, если интерестно:) )(в списке сервисов они видны), далее питон установлен (+2 дополнения этих модули Egenix-mx и KinterbasDB), скрипты все не работают (даже для перла, тоже самое выводит)...вот собственно и всё:)
в любом случае Апач(если чисто для наших Статовых нужд) штука слишком мощная, попробуй Small HTTP.
Biotech, давай разбираться почему Демон ничего не пишет в базу...в настройках путь к базе прописан верно?
Главное, я несколько дней назад сталкивался со всеми этими ошибками когда настраивал этот же софт для наших серверов (вот страничка стата если кому то интересно http://fps.squad.ru:8080/cgi-bin/online.py). Теперь жалею, что не записывал все проблемы с которыми столкнулся и то, как я их преодолел. Попробую вспомнить основные.Цитата:
Originally posted by Driver
выдаёт такую ошибку:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, localhost@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
1. Сначала Firebird. McFris уже писал выше, что для работы с базой под Винами нужно прописывать юзера SYSDBA и пароль masterkey (это вместо того User и пароля 123, которые прописаны в конфигурационных файлах fbdaemon.ini и online.ini). После того как разберётесь с IBExpert обязательно поменяйте в целях безопасности пароль юзера SYSDBA на свой и пропишите это в конфигфайлах.
2. В Контрольной панели Windows после инсталяции Firebird 1.5 должна появится иконка "Firebird 1.5 Server Manager". Запустите менеджер и убедитесь, что сервер Firebird запущен. Один раз после рестарта Виндоус он у меня почему-то сам не запустился.
3. Не забудьте переименовать базу new.gdb из инсталяционного пакета от McFris, например, в fbstats. gdb и зарегистрировать её в IBExpert. При регистрации базы заполняются следующие поля:
1.Сервер - локальный (если он у вас локальный);
2.Версия сервера - Firebird1.5;
3.Файл базы данных - с:\fbstats\fbstats.gdb (например);
4.Пользователь - SYSDBA
5.Пароль - masterkey (или другой если вы уже успели его сменить).
6.Кодировка - WIN1251.
Другие поля можно не заполнять. Если всё было указано правильно, то после регистрации можна в левом окне IBExpert двойным щелчком на названии базы открыть её.
3. ВЭБ сервер. Вот тут пожалуй самое сложное, если вы решите использовать Апаче. Софт для статистики подразумевает, что скрипты Питона и файлы html лежат в одной папке. А в Апаче по умолчанию этого делать нельзя. Если вы весь этот комплект попробуете запустить в папке cgi-bin, то при генерации html странички вывалится ошибка сервера, типа "Internal Server Error, ошибка 500", а в логе ошибок Апаче напишет типа "этот файл не является запускаемым".
Вообще, грамотно сделать так: если скрипт создает какие-либо html'и, то в нем должен быть явно прописан путь к директории, где они должны лежать и эта директория должна быть вне cgi-bin, в htdocs, лучше всего. Скорее всего в скрипте есть переменная, где этот путь указывается. Надо поправить его на что-нить отличное от "./"
A если уж совсем хочется держать скрипты и хтмл в одном месте, то лучше в htdocs, при этом в конфиге апача на директорию htdocs надо прописать Options ExecCGI. Хотя, как правило, так делать не советуется.
Поэтому для запуска всего этого пакета я советую установить Small HTTP, ссылку на который даёт McFris. Я сам удивился - весит он 93 Kb (там есть русская версия), очень элементарен в инсталляции и использовании, позволяет запустить и скрипты и html доки в одном каталоге. Именно его, в конце-концов, я и запустил под статистику, а переконфигурирование Апаче пока отложил.
4. Была ещё одна неожиданность с которой я столкнулся. В начале скриптов на Питоне есть строчка
#!/usr/bin/python
Вроде она используется только под Linux и Unix, а для Винды не важна (так мне сказал McFris :) ), но скрипт у меня не запустился, пока я в ней не указал явно путь на интерпретатор Питона, в моём случае
#!c:\Python23\python
Так что советую это строчку поменять тоже.
5. Да, на всякий случай. В файле fbdaemon.ini указан путь:
dmg app=D:\IL2\Server FB_0_1.1\FBMission\fbmission.py
На самом деле там лежит не fbmission.py, а fbmission.exe. Поэтому и в пути нужно исправить название файла на fbmission.exe.
Это основное, что я вспомнил по быстрому.
Алилуйя!
Не понял, что я сделал, но стат заработал :D
Просто в ИБ-Експерте базу разрегистрировал и зарегистрировал заново, как описал Botik.
Слава Ботику! :)
А звание рядовой (флигер) должно присуждаться сразу при регистрации ника в базе или после набора n-ного (но меньше 150) кол-ва очков? Сейчас у всех наблюдается None, хотя напранные очки у пилотов имеются - от -14 до 29.
там есть спец функция, называетсяЦитата:
Originally posted by Biotech
А звание рядовой (флигер) должно присуждаться сразу при регистрации ника в базе или после набора n-ного (но меньше 150) кол-ва очков? Сейчас у всех наблюдается None, хотя напранные очки у пилотов имеются - от -14 до 29.
PILOT_RANG
запусти её в эксперте(зелёный треугольник) и подтверди сохранение(красненькая гулька) и будут звания.
а вот это что за ошибка:
Traceback (most recent call last): File "C:\shttps\www\cgi-bin\online.py", line 651, in ? UserOnline() File "C:\shttps\www\cgi-bin\online.py", line 451, in UserOnline w_i=open(path_wi+'war.ini','rt') IOError: [Errno 2] No such file or directory: 'E:\\FBMission1\\fbmission.exe\\war.ini'
Отлично. Спасибо!
Вот я там еще видел таблицу AWARDS. Дабы эти аварды присуждались, нужно что-то специально подкрутить, или оно само?
Я не поиму почему вотэто пишет :
No such file or directory: 'E:\\FBMission1\\fbmission.exe\\war.ini'
и ешё вот это :
Traceback (most recent call last):
File "C:\shttps\www\cgi-bin\online.py", line 617, in ?
sini=ini_file('online.ini')
File "C:\shttps\www\cgi-bin\online.py", line 12, in __init__
self.parse_file()
File "C:\shttps\www\cgi-bin\online.py", line 14, in parse_file
file_obj = open(self.location, 'r')
IOError: [Errno 2] No such file or directory: 'online.ini'
C:\Documents and Settings\Driver>
путь в папку куда установлен fbmission прописан неверно, E:\FBMission1\ должен быть видимо...
Biotech, это пока не реализовано, но ты можешь выдавать медали руками :)
в таблицу PILOT_AWARD написать ид пилота(№ лётной книжки), номер медали из таблицы АВАРД и в примичание за что она выдана.
и будет примерно так:
http://213.145.47.150/cgi-bin/online...tat&pilotid=35
после исправления стало так
Traceback (most recent call last): File "C:\shttps\www\cgi-bin\online.py", line 651, in ? UserOnline() File "C:\shttps\www\cgi-bin\online.py", line 497, in UserOnline http = http+'
это значит что демон не записал что началась мисиия. посмотри, в таблицах ID_PILOTS есть хоть одна запись?
id_pilots или id_players ?
и ешё вопрос где это смотреть ?
ID_PLAYERS, ошибся...
смотреть нажав на вкладку ДАТА.
а что там должно быть написанно
там желательно увидеть хоть несколько пилотов. или в таблице MISSION хотябы одну миссию.
вот что показывает, если я правильно смотрю
а вот мои INI
щёлкни 2 раза на таблицу и выбери вкладку Дата. там видно будет :) желательно или пилотов или миссион.
я так понимаю что вот это
Я просмотрел ини файлы. Вроде ничего странного не заметил. Только строчку в fbdaemon.ini:Цитата:
Originally posted by Driver
а вот мои INI
sql database = 192.168.7.11:e:\fbstats.gdb
я бы всётаки сократил до
sql database = e:\fbstats.gdb
У тебя ведь база лежит на этом же компе где и fbdaemon?
ага, оно. всё плохо :) демон в базу ничего не написал, поэтому стат и не работает.
демон увидел твой сервер? в ини на первый взгляд всё верно...
... И посмотри на мою колонку Domen базы и твою. У тeбя там красные надписи. Что-то похожее было и у Биотеха. Попробуй тоже перерегистрировать базу в IBExpert. Хуже не будет :).
Кстати, для Total Commander 6.x есть плагин для просмотра и редактирования баз Interbase и Firebird. Очень удобно просматривать базу не запуская IBExpert.
http://www.wincmd.ru/plugring/GDBView.html
Всем огромносе СПАСИБО, всё заработало .Только почему у меня карты не меняються ? И время не то показывает.
И почему в новом FBD , когда разобьешся не вычитается кол-во самолетов .уменьшается только число пилотов ????
И вот такие вопросы:
1) Как сделать так, чтобы ник, зарегистрированный в базе на стороне ОКЛ не мог играть за СССР?
2) Почему не работает passchange.py? Скрипт запускается, но не отрабатывает. Так и висит, пока его не остановишь. И где потом игрокам этот пароль вводить, если он таки установится?
3) Как быстро должны фиксироваться изменения в базе? В стате оч. долго держится неверная информация о кол-ве пилотов в онлайн. Кроме того, когда игрок заходит на сервер, выбирает сторону и жмет "вылет" - демон пишет эти данные в таблицу ACTIVE_PLAYERS. Смотрю в ib-expert - эта таблица пустая, все поля <null>. И на страничке статистики этого игрока в онлайне как бы нет. И так пока что нибудь не случится. Напр., пока не зайдет еще один игрок. (рефреш странички делаю, кэш ни при чем) Я закономерности не уловил пока. Порой один игрок очень долго висит в статистике в каком либо состоянии, в то время как это состояние уже несколько раз поменялось. Например, он отображается серым цветом в то время, как уже давным давно летает. Повторюсь, кэш браузера ни при чем, обновлял принудительно.
Это так и надо? Разве демон вносит изменения в базу не по факту, а сразу скопом, раз несколько минут? Если да, то как-то несистемно он это делает.
5) Запускаю скрипт PILOT_RANG, он отрабатывает, подтверждаю изменения. Но в таблице PILOT_ID поле RANG так и остается со значением <null>. И так несколько раз. Потом вдруг, звания таки появились. Тоже не уловил закономерности.
4) Может FBD-2 Beta попробовать? Кто что скажет?
побольше инфы плс, пока непонятно, похоже что он вообще не работает.Цитата:
Originally posted by Driver
И почему в новом FBD , когда разобьешся не вычитается кол-во самолетов .уменьшается только число пилотов ????
1) никакЦитата:
Originally posted by Biotech
И вот такие вопросы:
1) Как сделать так, чтобы ник, зарегистрированный в базе на стороне ОКЛ не мог играть за СССР?
2) Почему не работает passchange.py? Скрипт запускается, но не отрабатывает. Так и висит, пока его не остановишь. И где потом игрокам этот пароль вводить, если он таки установится?
3) Как быстро должны фиксироваться изменения в базе? В стате оч. долго держится неверная информация о кол-ве пилотов в онлайн. Кроме того, когда игрок заходит на сервер, выбирает сторону и жмет "вылет" - демон пишет эти данные в таблицу ACTIVE_PLAYERS. Смотрю в ib-expert - эта таблица пустая, все поля <null>. И на страничке статистики этого игрока в онлайне как бы нет. И так пока что нибудь не случится. Напр., пока не зайдет еще один игрок. (рефреш странички делаю, кэш ни при чем) Я закономерности не уловил пока. Порой один игрок очень долго висит в статистике в каком либо состоянии, в то время как это состояние уже несколько раз поменялось. Например, он отображается серым цветом в то время, как уже давным давно летает. Повторюсь, кэш браузера ни при чем, обновлял принудительно.
Это так и надо? Разве демон вносит изменения в базу не по факту, а сразу скопом, раз несколько минут? Если да, то как-то несистемно он это делает.
5) Запускаю скрипт PILOT_RANG, он отрабатывает, подтверждаю изменения. Но в таблице PILOT_ID поле RANG так и остается со значением <null>. И так несколько раз. Потом вдруг, звания таки появились. Тоже не уловил закономерности.
4) Может FBD-2 Beta попробовать? Кто что скажет?
2) ссылка на личной странице пилота "Изменить пароль"
3,5) особенности эксперта видимо у себя таких случаев я не фиксировал, открывал локально?
Поскольку теперь в Иле события по самолёту и события по пилоту разделены, то такое случается. Я такое тоже замечал. Например, нужно, было мне проверить перезапуск миссии. Появлялся на полосе и бросал под себя бомбу. Естественно, самолёт разносило. Пилот погибал, а самолёт из оставшегося кол-ва не отнимался :). Да и в других ситуациях иногда такое бывало.Цитата:
Originally posted by Driver
И почему в новом FBD , когда разобьешся не вычитается кол-во самолетов .уменьшается только число пилотов ????
Я пробовал. Реагирует на события он заметно шустрее, но ... в нём нету поодержки динамических генераторов, типа FBMission. То есть можно перезапускать только статичный набор миссий :(. Вроде обещают всё-таки в дальнейшем вернуть поддержку DGM. Да и статистика к нему нужна своя - FBStats 2 (на базе MySQL). Та, что на "нулевом" Геннадича к нему не подойдёт.Цитата:
Originally posted by Biotech
...Может FBD-2 Beta попробовать? Кто что скажет?
Запускаю сервер , запускаю демон. Все начинает работать демон реагирует на комманды типа <status, <targets итд захожу на сервер взрываю себя или сбивают меня (неимеет значения) пишет вот что:Цитата:
Originally posted by VGV
побольше инфы плс, пока непонятно, похоже что он вообще не работает.
--- Driver was killed.
Server: (Red: -1 pilot): Driver DIED
Server: planes / pilots left: (Blue: 50 + 30 / 2) (Red: 50 + 30 / 1) None win: (0:10:46)
Может это с сервером что-то ? Демон вроде работает ,миссии генерятся .самолеты прибавляюстя.Но не списываются :)
тоже этот вопрос интересует,то нормально работает ,то не обновляется очень долго. Можно ли ускорить обновление статистики ?Цитата:
Originally posted by Biotech
3) Как быстро должны фиксироваться изменения в базе? В стате оч. долго держится неверная информация о кол-ве пилотов в онлайн. Кроме того, когда игрок заходит на сервер, выбирает сторону и жмет "вылет" - демон пишет эти данные в таблицу ACTIVE_PLAYERS. Смотрю в ib-expert - эта таблица пустая, все поля <null>. И на страничке статистики этого игрока в онлайне как бы нет. И так пока что нибудь не случится. Напр., пока не зайдет еще один игрок. (рефреш странички делаю, кэш ни при чем) Я закономерности не уловил пока. Порой один игрок очень долго висит в статистике в каком либо состоянии, в то время как это состояние уже несколько раз поменялось. Например, он отображается серым цветом в то время, как уже давным давно летает. Повторюсь, кэш браузера ни при чем, обновлял принудительно.
Это так и надо? Разве демон вносит изменения в базу не по факту, а сразу скопом, раз несколько минут? Если да, то как-то несистемно он это делает.
ХЭЛП!!! У меня ваще ниче не работает в с связке FB Server+FBDaemon2+FBMission!!! (без вкючения FBD Stats) Кошмар просто... :(( Все конфиги прописал, в чем дело не понимаю. Начальную миссию генерю вручную, путем запуска FBMission (генериться миссия первая по списку из конфига WAR), сервер загружает миссию, подключается Демон, все нормально отображается, ошибок не выдается, начинается ведение счета потерь, но подключаюсь к серваку, появляется сообщение: "подключение успешно" далее "начало передачи данных и ниже название миссии net/dogfight/FBM/gen.mis" И ВСЕ НА ЭТОМ ЗАМИРАЕТ! Ничего не грузиться. Пробовал открыть gen.mis в полном редакторе, така же хрень написано "Загрузка" и все, мона ждать до умопомрачения, ничего не загружается. Ниче не понимаю, что не так?
видимо чтото с миссией, попробуй положить эту(уже готовую) в папку куда ты указал их гененрировать.
:( Все тоже самое сервер успешно загружает миссию и демон создает стат, но так же пишет:
Подождите:загружается катра
начало передачи данных
net/dogfight/FBM/gen.mis
И все жду жду - ничего :(
fbmission.ini
[Path]
next_period 1
mission_folder F:\GameServers\IL2FB Dedicated Server\Missions\Net\dogfight\FBM\
map_number 1
teh_progress 3
one_way 1
blue_fields 2
craft_on_field 12
red_fields 2
next_miss 1
FBDaemon2 Config
dmg app=F:\GameServers\IL2FB Dedicated Server\FBMission\FBMission.exe
dmg folder=F:\GameServers\IL2FB Dedicated Server\Missions\Net\dogfight\FBM\
daemon path=F:\GameServers\IL2FB Dedicated Server\FBD2/
path=F:\GameServers\IL2FB Dedicated Server/
ip=10.219.23.150:20003
как я дома ставил:
пути без пробелов
и почему на конце слэш другой?
...Server\FBD2/ ???
ИМХО так надо
...Server\FBD2\
Демон2? Это не наше. Наш 1.6, лежит тута: http://213.145.47.150/fbdaemon.html
Я же писал чуть выше, что у Демон 2 НЕТУ поддержки ДИНАМИЧЕСКИХ ГЕНЕРАТОРОВ. То есть FBMission никогда вызываться Демоном вторым не будет для генерации следующей миссии :(. То есть, вот эти строчки сейчас демоном вторым просто игнорируются:Цитата:
ХЭЛП!!! У меня ваще ниче не работает в с связке FB Server+FBDaemon2+FBMission!!!
dmg app= ...
dmg folder= ...
А если хочешь попробовать только FB Server + FBDaemon2, то и конфиг файл Демона бери оригинальный. Там только IP поменять, да путь к серверу на твой. Только за слэшами следи.
Да да спасибо я понял все :) (каждый раз убеждаюсь в том, что я ламер)
Проблемка заключается в том , что я , либо стер какой-то файл из папки сервера, либо в кофиге что-то намутил не то, потому как перестали грузиться даже обычные миссии :( Выложите плиз фалы конфига сервака confc и conf
Очень вам благодарен.
файлы confc и confs
В смысле они загружаются но присоединиться невозможно