Независимые от платформы постоянные ссылки — лучшие практики?

Я пытаюсь выяснить общую структуру постоянных ссылок для ведения блога, чтобы быть независимой от платформы. Я знаю, что Wordpress поддерживает постоянные ссылки и имеет несколько плагинов для миграции различных стилей постоянных ссылок, но мне также нужно заставить его работать в FlatPress и PivotX, и у меня нет поддержки перезаписи URL в каждом месте.

Пока что я попытаюсь использовать папку типа /permalinks/, в которую файл index.php будет перенаправлять на сам пост, например /permalinks/index.php?external-link-01 будет перенаправлять на /index.php/2009-02-03/external-link-01 или / index.php/e=42 в зависимости от фактической используемой платформы для ведения блога.

Для более качественных постоянных ссылок и во избежание перезаписи URL-адресов я мог бы создать подпапку для каждой постоянной ссылки (например, /permalinks/external-link-01/), в которой индексный файл по умолчанию будет выполнять перенаправление.

So,

  1. Есть ли более приятный способ поддерживать такие постоянные ссылки?
  2. Какой тип переадресации я должен использовать?
  3. Что я могу сделать, чтобы разрешить закладку постоянной ссылки после редиректа? (например, текущая страница — /index.php/e=42, а закладка должна быть /permalinks/index.php?external-link-01)

person alexandrul    schedule 14.09.2009    source источник


Ответы (2)


Зачем создавать кучу папок с индексными файлами в них? Кажется, что управление в долгосрочной перспективе станет настоящим кошмаром. Почему вы хотите избежать перезаписи URL? Mod_rewrite кажется чистой, централизованной и чрезвычайно гибкой системой, которой будет легче управлять в долгосрочной перспективе.

Не критикую, просто интересно понять мотивацию вашего проекта.

Что касается перенаправления, я думаю, вы хотите сделать

301 переехал навсегда

Таким образом, редиректы правильно понимаются поисковыми системами. И у вас не будет ошибочных URL-адресов, потерянных в земле SEO, если ваша система постоянных ссылок выйдет из строя.

Вы также можете рассмотреть возможность включения схемы сокращения URL-адресов в свою систему.

http://www.shauninman.com/archive/2009/08/17/less_n

И если у вас есть система с несколькими ссылками на разные URL-адреса, но с одним и тем же контентом, обязательно не забывайте о канонических ссылках.

http://www.mattcutts.com/blog/canonical-link-tag/< /а>

person Gordon Potter    schedule 15.09.2009
comment
1. Поддержка перезаписи URL доступна не на всех хостингах, и не мне ее запрашивать. - person alexandrul; 15.09.2009
comment
2. Я хочу, чтобы внешние ссылки (на DZone, Digg и другие) оставались одинаковыми (/blog/permalink/fixed-link-01/) независимо от моей платформы для ведения блога, доступной в любой момент (например, при переходе с FlatPress на PivotX). или наоборот) - person alexandrul; 15.09.2009
comment
Хорошо, имеет смысл. Я искал некоторые сценарии сокращения URL-адресов, а затем настраивал их для поддержки системы постоянных ссылок. Нет правила, согласно которому рерайтер URL-адресов должен быть коротким и зашифрованным. Кажется, что если вы используете хорошо спланированную схему типа RESTful, вы можете избежать переписывания. Ваше приложение с постоянными ссылками может располагаться между внешним миром и вашим блогом. Я бы последовал за MVC. Там, где есть простой фронт-контроллер-хаб с кучей тупых индексных файлов. Вы можете абстрагировать модель данных либо от базы данных, либо от нескольких скрытых структур данных. Удачи! Любопытно посмотреть, что вы создадите. - person Gordon Potter; 15.09.2009
comment
Спасибо, вы дали мне новый взгляд на проблему. - person alexandrul; 15.09.2009

Потенциально вы можете реализовать довольно простую систему, основанную на папках с индексами, все они связаны с одним php-скриптом, который затем настраивается для перенаправления пользователей на выбранную статью (подсказка: вы можете реализовать это довольно легко, используя url и preg_replace). Это может иметь небольшое снижение производительности по сравнению с mod_rewrite, но оно должно быть независимым от платформы для ведения блога и позволять вам гарантировать, что ваши ссылки никогда не будут сломаны (даже если это еще хуже, и ваш хост не разрешает симлинки, вы можете просто скопировать файл ).

person ternaryOperator    schedule 06.01.2010
comment
На данный момент я использую папки с документами по умолчанию, которые перенаправляют на требуемый URL. Ваше решение намного проще поддерживать +1 - person alexandrul; 06.01.2010