Описание
Данный плагин заменяет внутренние ссылки, на вашем сайте, на статические, приятные взгляду и индексирующим роботам.
Версия Seditio 171
Пример работы
/page.php?id=1 будет преобразовано в /page-1.htm
/plug.php?e=contactus будет преобразовано в /plug-e-contactus.html
Установка
1. Распакуйте архив и перепишите файлы в папку: /plugins/mod_rewrite/
2. Зайдите в Админ-панель в раздел «Плагины», зайдите в устанавливаемый плагин и нажмите «включить».
Настройка плагина
Откройте файл .htaccess, который находится в корневом каталоге вашего сайта и добавьте в него следующие строки:
php_flag session.use_trans_sid off php_flag session.use_only_cookies on Options FollowSymLinks -Indexes RewriteEngine on RewriteRule ^([a-z]+)-([a-z]+)-([0-9a-z_]*)-?(.*)$ $1-$4?$2=$3 [NC,QSA] RewriteRule ^([a-z]+)-?\.html$ $1.php [NC,L,QSA]
Если файл .htaccess у вас отсутствует, то возьмите его из архива с плагином. Данный плагин будет работать корректно только под вебсервером Apache с установленым mod_rewrite.
Size: 3KB, downloaded 2013 times
Добрый день! У меня вот такой вопрос по плагу:
при работе с файлами при попытке доступа к папке плаг формирует ссылку вида /pfs-f-8-c1-update-c2-rpagetext-userid-1.html - при этом получаю ошибку 404 при переходе по этой ссылке. Если руками правлю так: /pfs.php?f=8&c1=update&c2=rpagetext&userid=1, то работает ок. Обратил внимание, что на LDU сайте, где стоит похожий плаг, ссылки на файловые папки остаются не модифицированными плагином. В чем может быть дело?
короче, сам себе отвечаю: не добрался до глубинных механизмов, почему в LDU ссылки pfs со включенным плагином не переписывались, зато работали нормально. В седе 175 ссылки на pfs переписываются, но не работают. В итоге в плаге подправил это:
$search = "'href=((\')|[\'\"])(\w+).php(((\?|(\&(amp;)?))(?!".$cfg['plugin']['mod_rewrite']['condemned'].")(\w+)=(\w*))*)(((\?|(\&(amp;)?))".$cfg['plugin']['mod_rewrite']['condemned']."=(\w*))??)((\')|[\'\"#])'ie";
на это
$search = "'href=((\')|[\'\"])(\w+)^(pfs).php(((\?|(\&(amp;)?))(?!".$cfg['plugin']['mod_rewrite']['condemned'].")(\w+)=(\w*))*)(((\?|(\&(amp;)?))".$cfg['plugin']['mod_rewrite']['condemned']."=(\w*))??)((\')|[\'\"#])'ie";
а именно, добавил:
^(pfs)
чтоб не парсились ссылки на pfs. Для сео в этом месте пофиг, зато работает. Хотя конечно интересно, чеж с переписанным урлом не пашет...
нет, регулярка выше косячная
Comments: (6)