## Please edit system and help pages ONLY in the master wiki!
## For more information, please see MoinMoin:MoinDev/Translation.
##master-page:HelpTemplate
##master-date:Unknown-Date
##master-page:Unknown-Page
##master-date:Unknown-Date
#acl -All:write Default
#format wiki
#language ru

''' Как интегрировать вашу wiki с существующей установкой Apache '''

Сейчас существуют 5 возможностей запустить wiki MoinMoin: CGI, FastCGI, Mod Python, Standalone-сервер или Twisted-сервер. Лучшие результаты дают FastCGI или Mod Python, но они не доступны для всех платформ и нуждаются в сложной настройке. Далее идёт использование серверов twisted или standalone, которые намного быстрее и легче в настройке, чем CGI-вариант. 

Однако, много людей уже запустили веб-сервера и обслуживают статические страницы или другие приложения, и хотят добавить wiki к имеющейся установке. Лучший вариант для этого, это запустить MoinMoin как Standalone- или Twisted-сервер, связанный с вашим существующим веб-сервером через прокси. В версии 1.5 это работает без сложных настроек.

В приведённом ниже примере мы интегрируем wiki MoinMoin в наш сайт http://www.example.com/exwiki/.

 (!) New in release 1.5

= Требования =

 1. Установите Standalone- или Twisted-сервер, как описано в КакУстанавливать.
 1. Убедитесь, что mod_proxy установлен и загружен. Проконсультируйтесь с [[http://localhost/manual|Документацией по Apache]].

= Интегрирование с Apache 2 =

== Настройка Standalone или Twisted ==

Если вы хотите использовать Twisted, отредактируйте {{{mointwisted.py}}} и установите такие опции:
{{{
    port = 8000
    interfaces = ['localhost']
}}}

Если вы хотите использовать Standalone, отредактируйте {{{standalone.py}}} и установите такие опции:
{{{
    port = 8000
    interface = 'localhost'
}}}

Теперь запустите ваш сервер moin и проверьте, что он работает на http://localhost:8000.

== Настройка Apache 2 ==

Отредактируйте ваш файл конфигурации Apache, `httpd.conf` или включаемый файл конфигурации:
{{{
# Должен быть off, чтобы запустить обратный прокси (reverse proxy)
ProxyRequests Off

Alias /wiki/ "/usr/share/moin/htdocs/"

<Location /exwiki/>
    ProxyPass http://localhost:8000/
    ProxyPassReverse http://localhost:8000/
    RequestHeader set X-Moin-Location /exwiki/
</Location>
}}}

Теперь перезапустите Apache и проверьте вашу wiki на http://localhost/exwiki/ или http://www.example.com/exwiki/

Эти настройки были проверены на Mac OS X.

= Интегрирование с Apache 1 =

== Настройка Standalone или Twisted ==

Если вы хотите использовать Twisted, отредактируйте {{{mointwisted.py}}} и установите такие опции:
{{{
    properties = {'script_name': '/mywiki', 'http_host': 'yourdomain'}
    port = 8000
    interfaces = ['localhost']
}}}

Если вы хотите использовать Standalone, отредактируйте {{{standalone.py}}} и установите такие опции:
{{{
    properties = {'script_name': '/mywiki', 'http_host': 'yourdomain'}
    port = 8000
    interface = 'localhost'
}}}

 (!) Ещё одним решением может быть использование конфигурационной опции url_mapping.

== Настройка Apache 1 ==

Эта настройка требует mod_proxy. Прежде чем продолжать убедитесь, что он установлен и загружен.

Отредактируйте ваш файл конфигурации Apache, `httpd.conf` или включаемый файл конфигурации:
{{{
# Должен быть off, чтобы запустить обратный прокси (reverse proxy)
ProxyRequests Off

Alias /wiki/ "/usr/share/moin/htdocs/"

<Location /exwiki/>
    ProxyPass http://localhost:8000/
    ProxyPassReverse http://localhost:8000/
</Location>
}}}

Теперь перезапустите Apache и проверьте вашу wiki на http://www.example.com/exwiki/

 (!) Обратите внимание, что ваша wiki с этими настройками не будет правильно работать по адресу http://localhost:8000.

 <!> Тестировалось на Apache 2, должно также работать на Apache 1.

= Конфигурация фермы =

При запуске Twisted или Standalone без прокси, URL wiki содержит имя сервера (иногда также порт) и имя страницы. Например: `localhost:8000/pagename`. 

Однако, при запуске через прокси, URL wiki содержит хост прокси, а не имя сервера, и может включать "script_name". В этом случае wiki, работающая на `localhost:8000` будет иметь url `www.example.com/exwiki/pagename`, когда вы обращаетесь к ней через прокси, и `localhost:8000/pagename`, когда вы обращаетесь к ней локально.

Если вы хотите использовать одни и те же конфигурационные файлы и для локального и для глобального доступа, используйте в вашем `farmconfig.py` примерно такие настройки:
{{{
wikis = [('exwiki', r'^(localhost:8000|www.example.com/exwiki).*')]
}}}

Если вы хотите получить разную конфигурацию для локального и глобального доступа, то:
{{{
wikis = [('exwiki_local', r'^localhost:8000.*'),
         ('exwiki_world', r'^www.example.com/exwiki.*'),]
}}}

= Отключение перезаписи хоста =

Если вы хотите отключить новую прозрачную перезапись хоста, перекройте `http_host` в вашем серверном скрипте:
{{{
    properties = {'http_host': 'hostname'}
}}}
