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

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

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

  • wiki:rewrite

    Переписывание URL-адресов

    По умолчанию DokuWiki не перезаписывает URL-адреса , в результате чего URL-адреса выглядят следующим образом:

    http://example.com/doku.php?id=wiki:syntax

    Эти URL-адреса несколько уродливы и могут плохо индексироваться некоторыми поисковыми системами. Переписывание URL-адресов предлагает решение этой проблемы, приводящее к более красивым URL-адресам.

    Варианты переписывания

    DokuWiki поддерживает два метода перезаписи URL , включаемых через опцию userrewrite. Один из них основан на возможностях перезаписи веб-сервера; другой обрабатывает переписанные URL внутри DokuWiki. В таблице ниже обобщены эти опции.

    Ценить Информация Пример URL-адреса
    0 Перезапись URL не используется. Это значение по умолчанию. http://example.com/dokuwiki/doku.php?id=wiki:syntax
    1 Перезапись выполняется веб-сервером. http://example.com/dokuwiki/wiki:syntax
    2 Переписыванием занимается DokuWiki. http://example.com/dokuwiki/doku.php/wiki:syntax

    Перезапись URL-адресов отключена по умолчанию, поскольку для этого требуется дополнительная настройка помимо установки соответствующих параметров конфигурации - эти конфигурации обсуждаются ниже.

    Вариант 1: веб-сервер

    Для этой опции сначала требуется настройка на веб-сервере. Как включить ее, зависит от используемого веб-сервера. Пожалуйста, обратитесь к ссылкам ниже для получения дополнительной информации.

    • Apache – использует модуль mod_rewrite . Его можно включить с помощью .htaccessфайла. (см. Апачи)
    • iis – использует пользовательские правила перезаписи или модуль перезаписи
    • nginx – имеет встроенную поддержку перезаписи
    • Встроенный веб-сервер PHP — не требует настройки, перезапись будет работать с использованием маршрутизатора DokuWiki index.php

    После включения поддержки перезаписи на веб-сервере эту опцию можно включить в конфигурации DokuWiki.

    Выберите .htaccess опцию в раскрывающемся списке конфигурации перезаписи пользователя . Либо conf/local.php добавьте или измените строку в вашем файле так, чтобы она выглядела так:

    $conf [ 'userrewrite' ]  =  1 ;

    В корневой папке DokuWiki найдите файл .htaccess.dist и скопируйте его как .htaccess. Отредактируйте его и раскомментируйте строки, относящиеся к userwrite. Это короткий файл, который легко понять.

    Вариант 2: DokuWiki

    Эта опция не требует настройки веб-сервера. Однако она опирается на функцию PATH_INFO стандарта CGI, реализованную Apache. Некоторые конфигурации веб-сервера могут ее не поддерживать.

    Чтобы включить эту опцию, выберите DokuWiki internal опцию в раскрывающемся списке конфигурации перезаписи пользователя. Либо conf/local.php добавьте или измените строку в вашем файле так, чтобы она выглядела так:

    $conf['userewrite'] = 2;

    Очистить идентификатор сеанса PHP

    Несмотря на использование «чистых» URL-адресов, вы можете столкнуться с параметром «DokuWiki» в URL-адресе , который выглядит следующим образом:

    Идентификатор сеанса PHP:

    http://example.com/example?DokuWiki=c81a95369a66576982119e2a60b557a5

    Этот параметр — идентификатор сеанса PHP, который PHP добавляет автоматически. Он совершенно не связан с перезаписью. Чтобы избежать этого, вы можете заставить PHP всегда использовать куки для сеансов, установив опцию session.use_only_cookies для PHP.

    Обычно это делается в файле конфигурации php.ini:

    session.use_only_cookies=1

    Вы также можете попробовать:

    session.use_trans_sid=0

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

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