Инструменты пользователя

Инструменты сайта

  • Показать исходный текст
  • История страницы
  • Ссылки сюда
  • Оставить на чай
  • Экспорт в PDF
  • Наверх

  • wiki:install:apache

    Apache

    Apache — наиболее широко используемый веб-сервер с DokuWiki. Большинство хостинг-провайдеров, предлагающих хостинг PHP, также будут использовать Apache.

    Установка

    В основном все дистрибутивы Linux предлагают пакет Apache для легкой установки. Пожалуйста, обратитесь к документации вашего дистрибутива, чтобы узнать, как установить программные пакеты.

    Пользователь Windows может выбрать установочные пакеты от различных сторонних поставщиков. Хорошей альтернативой также является наша «Докувики» на флешке .

    FIXME MacOS?

    Добавление поддержки PHP

    PHP можно добавить через mod_php или fpm.

    FIXME добавить информацию

    Включение поддержки .htaccess

    .htaccess

    FIXME добавить информацию

    См. также: Stackoverflow: htaccess не читается.

    Переписывание для более удобных URL-адресов

    Чтобы включить перезапись URL, вам сначала нужно включить модуль mod_rewrite. В большинстве дистрибутивов Linux это можно сделать, вызвав:

      sudo a2enmod rewrite
      sudo apache2ctl restart

    Правила перезаписи затем можно настроить на основе vhost или через .htaccess файл. Последнее является более распространенным вариантом использования — см. выше, как включить .htaccess файлы.

    Dokuwiki поставляется с дистрибутивной копией файла .htaccess , который называется .htaccess.dist, просто переименуйте файл в .htaccess и отредактируйте его, раскомментировав соответствующие строки.

    Вот пример того, как должны выглядеть правила переписывания.

    RewriteEngine on
     
    RewriteBase /dokuwiki
     
    RewriteRule ^_media/(.*)              lib/exe/fetch.php?media=$1  [QSA,L]
    RewriteRule ^_detail/(.*)             lib/exe/detail.php?media=$1  [QSA,L]
    RewriteRule ^_export/([^/]+)/(.*)     doku.php?do=export_$1&id=$2  [QSA,L]
    RewriteRule ^$                        doku.php  [L]
    RewriteCond %{REQUEST_FILENAME}       !-f
    RewriteCond %{REQUEST_FILENAME}       !-d
    RewriteRule (.*)                      doku.php?id=$1  [B,QSA,L]
    RewriteRule ^index.php$               doku.php

    Обратите внимание, что эта строка RewriteBase /dokuwiki может вообще не понадобиться. Если вы ее используете, вам нужно заменить путь /dokuwiki на любой каталог, который вы используете в своем URL для перехода к вики. Если ваша вики находится на верхнем уровне домена (например, http://example.com указывает на начальную страницу вики), то используйте RewriteBase /.

    Флаг B требуется в Apache 2.4.56, чтобы избежать ошибок AH10411: Rewritten query string contains control characters or spaces

    Статус Apachectl нарушен

    Правила перезаписи Dokuwiki могут повлиять на команду apachectl status и заставить ее возвращать страницу DokuWiki 404 вместо страницы статуса сервера. Вы можете исправить это, добавив исключение в правила перезаписи

    RewriteCond %{REQUEST_URI} !^/server-status$

    или создав пустой файл статуса сервера в корневой папке dokuwiki, где находится doku.php.

    См. сообщение на форуме Статус Apachectl нарушен с dokuwiki

    Смотрите также

    Только авторизованные участники могут оставлять комментарии.
    wiki/install/apache.txt · Последнее изменение: 2024/08/09 02:24 — vladpolskiy