Одразу після установки SPIP сторінки, які він створює, мають відносні адреси у вигляді spip.php?article765
, які в URLS виглядають як http://www.spip.net/spip.php?article765
.
Існує можливість мати адреси більш промовисті, наприклад замість article123.html
використовувати заголовок статті Title-of-the-article.html
, і SPIP допоможе вам вирішити це завдання.
Ця функціональність вимагає розуміння різниці між двома типами URL:
- видимий URL сторінки - те, що ви ввели в адресний рядок вашого браузера або те, що там відображається. Наприклад для сторінки, яку ви зараз читаєте, це http://www.spip.net/uk_article5827.html
. Саме такі URL-адреси люди часто хочуть зробити більш «красивими» або «значущими»;
- справжній URL сторінки - той URL, який «бачить» SPIP, коли сторінка розраховується на сервері. Наприклад, для цієї сторінки: http://www.spip.net/article.php?id_article=5827
. Звичайно, таку адресу теж можна ввести безпосередньо в браузері (і ви можете переконатися в цьому).
Вибір форми видимих URL
В файлі ecrire/mes_options.php
[1] (створіть цей файл, якщо його немає) ви можете оголосити змінну PHP, що містить тип URL, який належить використовувати. За відсутності такого явного оператора, SPIP буде використовувати:
$type_urls = "page";
Змінна $type_urls
визначає PHP файл, який викликається під час генерації URL. З декларації за замовчуванням вище, ім’я такого PHP файлу - це перший знайдений urls/page.php
на SPIP_PATH.
SPIP також пропонує інші потенційні імена PHP, а саме urls/standard.php
, urls/html.php
, urls/propres.php
, urls/propres-qs.php
та urls/propres2.php
в директорії ecrire/
- файл urls/html.php
дозволяє використовувати адреси «article123.html». Ви можете вирішити використовувати ці URL «html»-вигляду, додавши до файлу ecrire/mes_options.php
рядок:$type_urls = "html";
- файл urls/propres.php
дозволяє використовувати адреси, подібні до «Title-of-the-article». Для цього вставте:$type_urls = "propres";
- файл urls/propres2.php
створює варіацію попередніх формі, і в результаті адреси будуть «Titre-of-the-article.html». Для цього вставте:$type_urls = "propres2";
- файл urls/propres-qs.php
є подібною варіацією з результатом «./?Title-of-the-article
». Для цього вставте:$type_urls = "propres-qs";
. Це корисно, якщо ваш хостинг-сервер не дозволяють використовувати Apache URL rewriting module (cf. mod_rewrite)
- нарешті, файл urls/standard.php
дозволяє генерувати ностальгічні адреси, подібні до тих, які створювали попередні версії SPIP: «article.php3?id_article=3588
»). Для цього вставте:$type_urls = "standard";
Якщо ви хочете використовувати свої власні адреси (для цього ви маєте знати, як програмувати на PHP), то настійно рекомендується використовувати один з цих файлів як базу і скопіювати його як файл для подальшого використання, надавши копії ім’я виду:
urls/XXX.php
. Наприклад, дуже легко змінити функцію_generer_url_propre()
вurls/propres.php
, щоб отримати деякі дуже цікаві варіанти; ми будемо вдячні, якщо ви поділитеся ними через SPIP Contrib’ site.
Програмування перекладу видимих адрес в реальні адреси
Отже адреса article123.html
насправді викликає PHP spip.php файл з параметром id_article=123
, необхідно налаштувати веб-сервер, на якому розміщується Ваш сайт, через .htaccess файл (що не завжди можливо), або шляхом редагування центрального файлу конфігурації сервера, якщо ви маєте доступ до нього. Цей засіб використовує на серверах Apache (найбільш поширених) і він відомий як Rewrite Rules: правила перезапису веб-адрес.
Знання, як писати ці правила, не проста справа для не-програмістів, і ми не можемо дати вам гарантій, як це буде працювати, тому що багато залежить від вашої конфігурації: цей компонент знаходиться повністю в ваших руках і під вашою відповідальностю (або вашого хостинг-провайдера).
Тим не менше, від SPIP 1.8 поставляється з файлом htaccess.txt
як прикладом, який працює з більшістю серверних хостів для типів URL, зазначених вище (як «стандартний», «HTML», «propres» і «propres2»). Для активації необхідно переписати цей файл в кореневий каталог сайту, перейменувавши його в <код> .htaccess код>. Настійно рекомендується відкрити цей файл в першу чергу і перевірити певні елементи конфігурації.
Потім ви повинні перевірити правильність нової адреси, натиснувши посилання «Дивитися он-лайн» для сторінки статті, автора, новини, рубрики і т.д.
Створення явних адрес на SPIP-сторінках
Аби відображати адреси за схемою, яку ви вибрали, ваші шаблони повинні використовувати наступні теги: #URL_ARTICLE
, #URL_RUBRIQUE
, #URL_BREVE
, тощо.
Перехід від одного типу URL до іншого
Від SPIP 1.8 все підготовано таким чином, щоб перехід від одного типу адрес до іншого виконувався просто: встановлюйте htaccess.txt
файл і просто перемикайте між «standard» адресами та «propres2» або «html» адресами та навпаки, не провокуючи помилки 404 для відвідувачів сайту (або для пошукових систем), які запам’ятали, проіндексували або зробили закладинки на попередні адреси.
Наостанок зауважимо, якщо ви оберете «propres» або «propres2» адреси, відвідувачі сторінок, які мають попередній тип адреси (стандартний або HTML), автоматично перенаправляються на нову адресу.