Difference between revisions of "Serve-control.xml:info"
 (Created page with "Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/[[serve...")  | 
				|||
| Line 1: | Line 1: | ||
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[Конфигурационные файлы]]/[[serve-control.xml:info|Общая информация]]  | Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[Конфигурационные файлы]]/[[serve-control.xml:info|Общая информация]]  | ||
| + | |||
| + | Данный конфигурационный файл используется CGI-программой <tt>[[serve-control]]</tt>. Содержимое файла прочитывается один раз при старте CGI-программы, то есть каждый раз, когда  | ||
| + | кто-либо посылает HTTP/HTTPS-запрос к серверу, приводящий к запуску программы <tt>serve-control</tt>.  | ||
| + | |||
| + | Местоположение конфигурационного файла определяется на этапе компиляции системы  | ||
| + | <tt>ejudge</tt> с помощью опции <tt>--enable-cgi-conf-dir</tt> скрипта <tt>[[configure]]</tt>. Эта опция позволяет установить каталог, в котором находятся конфигурационные файлы всех CGI-программ.  | ||
| + | |||
| + | Если опция не была указана в командной строке <tt>configure</tt>, предполагается значение по  | ||
| + | умолчанию, равное <tt>../cgi-data</tt>. Местоположение каталога конфигурационных файлов,  | ||
| + | задаваемого опцией <tt>--enable-cgi-conf-dir</tt> может быть как абсолютным, так и относительным путём. В случае относительного пути точкой отсчёта является каталог, в котором  | ||
| + | находится сама CGI-программа <tt>serve-control</tt>. Для этого используется переменная окружения  | ||
| + | <tt>SCRIPT_FILENAME</tt>, устанавливаемая веб-сервером при запуске CGI-программы.  | ||
| + | |||
| + | Таким образом, если, например, CGI-программы располагаются в каталоге  | ||
| + | <tt>/home/httpd/cgi-bin</tt>, то при значении пути к конфигурационным файлам  | ||
| + | <tt>../cgi-data</tt>, конфигурационные файлы CGI-программ должны располагаться в каталоге  | ||
| + | <tt>/home/httpd/cgi-data</tt>.  | ||
| + | |||
| + | Конфигурационный файл программы <tt>serve-control</tt> называется <tt>serve-control.xml</tt>,  | ||
| + | но и конфигурационный файл вообще может отсутствовать. Для этого необходимо, чтобы  | ||
| + | все настройки, которые считываются из конфигурационного файла, были установлены при  | ||
| + | компиляции системы с помощью опций скрипта <tt>[[configure]]</tt>.  | ||
| + | |||
| + | Чтобы конфигурационный файл программы <tt>serve-control</tt> был необязательным, необходимо, чтобы программа <tt>serve-control</tt> была открыта для доступа со всех IP-адресов (дополнительные ограничения, конечно, могут задаваться для каждого турнира в конфигурационном  | ||
| + | файле турнира). Кроме того, при компиляции системы <tt>ejudge</tt> необходимо указание опций -  | ||
| + | <tt>-enable-charset</tt>, <tt>--enable-socket-path</tt>, <tt>--enable-super-serve-socket</tt> и <tt>--enable-conf-dir</tt>. Тем не менее, рекомендуется создавать этот конфигурационный файл  | ||
| + | и устанавливать жёсткие ограничения на разрешенные IP-адреса для доступа к <tt>serve-control</tt>.  | ||
| + | |||
| + | Если конфигурационный файл не найден или не может быть открыт, используется следующий встроенный конфигурационный файл по умолчанию:  | ||
| + |  <?xml version="1.0" ?>  | ||
| + |  <serve_control_config>  | ||
| + |   <serve_control_access default="allow"/>  | ||
| + |  </serve_control_config>  | ||
| + | Опции <tt>--enable-charset, --enable-socket-path, --enable-super-serve-  | ||
| + | socket</tt> и <tt>--enable-conf-dir</tt> скрипта <tt>[[configure]]</tt> позволяют в этом случае установить  | ||
| + | значения по умолчанию для остальных необходимых элементов конфигурационного файла.  | ||
Revision as of 10:24, 22 February 2012
Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/Общая информация
Данный конфигурационный файл используется CGI-программой serve-control. Содержимое файла прочитывается один раз при старте CGI-программы, то есть каждый раз, когда кто-либо посылает HTTP/HTTPS-запрос к серверу, приводящий к запуску программы serve-control.
Местоположение конфигурационного файла определяется на этапе компиляции системы ejudge с помощью опции --enable-cgi-conf-dir скрипта configure. Эта опция позволяет установить каталог, в котором находятся конфигурационные файлы всех CGI-программ.
Если опция не была указана в командной строке configure, предполагается значение по умолчанию, равное ../cgi-data. Местоположение каталога конфигурационных файлов, задаваемого опцией --enable-cgi-conf-dir может быть как абсолютным, так и относительным путём. В случае относительного пути точкой отсчёта является каталог, в котором находится сама CGI-программа serve-control. Для этого используется переменная окружения SCRIPT_FILENAME, устанавливаемая веб-сервером при запуске CGI-программы.
Таким образом, если, например, CGI-программы располагаются в каталоге /home/httpd/cgi-bin, то при значении пути к конфигурационным файлам ../cgi-data, конфигурационные файлы CGI-программ должны располагаться в каталоге /home/httpd/cgi-data.
Конфигурационный файл программы serve-control называется serve-control.xml, но и конфигурационный файл вообще может отсутствовать. Для этого необходимо, чтобы все настройки, которые считываются из конфигурационного файла, были установлены при компиляции системы с помощью опций скрипта configure.
Чтобы конфигурационный файл программы serve-control был необязательным, необходимо, чтобы программа serve-control была открыта для доступа со всех IP-адресов (дополнительные ограничения, конечно, могут задаваться для каждого турнира в конфигурационном файле турнира). Кроме того, при компиляции системы ejudge необходимо указание опций - -enable-charset, --enable-socket-path, --enable-super-serve-socket и --enable-conf-dir. Тем не менее, рекомендуется создавать этот конфигурационный файл и устанавливать жёсткие ограничения на разрешенные IP-адреса для доступа к serve-control.
Если конфигурационный файл не найден или не может быть открыт, используется следующий встроенный конфигурационный файл по умолчанию:
<?xml version="1.0" ?> <serve_control_config> <serve_control_access default="allow"/> </serve_control_config>
Опции --enable-charset, --enable-socket-path, --enable-super-serve- socket и --enable-conf-dir скрипта configure позволяют в этом случае установить значения по умолчанию для остальных необходимых элементов конфигурационного файла.