- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Уважаемые форумчане!У меня возникла проблема!Мне надо настроить ЧПУ на самописном движке!
Написал в файле .htaccess следующее
RewriteEngine on
DirectoryIndex index.php
RewriteBase /
RewriteRule ^vacan(\d+).html/? index.php?vac=$1
RewriteRule ^rezum(\d+).html/? index.php?rezum=$1
RewriteRule ^dobvac.html/? index.php?p=dobvac
RewriteRule ^dobrez.html/? index.php?p=dobrez
RewriteRule ^obrsvz.html/? index.php?p=obrsvz
RewriteRule ^vacan/page/(\d+).html/? index.php?p=smotrvac&page=$1
RewriteRule ^rezum/page/(\d+).html/? index.php?p=smotrrez&page=$1
RewriteRule ^rub(\d+).html/? index.php?rub=$1
RewriteRule ^news(\d+).html/? index.php?news=$1
Все хорошо!Но по переходу на ссылку site/rezum/page/1.html, то на всех ссылках добавиляется site/rezum/page/!Как с этим можно бороться?ЗАранее спасибо.
ставьте [L] в конце правила если дальнейшая обработка url не нужна
Вместо строк:
RewriteRule ^dobvac.html/? index.php?p=dobvac
RewriteRule ^dobrez.html/? index.php?p=dobrez
RewriteRule ^obrsvz.html/? index.php?p=obrsvz
можно:
RewriteRule ^(dobvac|dobrez|obrsvz).html/? index.php?p=$1
вместо:
RewriteRule ^rezum(\d+).html/? index.php?rezum=$1
RewriteRule ^rub(\d+).html/? index.php?rub=$1
RewriteRule ^news(\d+).html/? index.php?news=$1
можно:
RewriteRule ^(rub|news|rezum)(\d+).html/? index.php?$1=$2
А если стандартизировать RewriteRule ^vacan(\d+).html/? index.php?vac=$1 то можно туда же добавить
оставшиеся строки
RewriteRule ^vacan/page/(\d+).html/? index.php?p=smotrvac&page=$1
RewriteRule ^rezum/page/(\d+).html/? index.php?p=smotrrez&page=$1
тожно можно было бы стандартизировать
И флаг [L] не помешает, это верно заметили
RewriteRule ^(dobvac|dobrez|obrsvz).html/? index.php?p=$1 [L]
RewriteRule ^(rub|news|rezum)(\d+).html/? index.php?$1=$2 [L]
RewriteRule ^vacan(\d+).html/? index.php?vac=$1 [L]
RewriteRule ^vacan/page/(\d+).html/? index.php?p=smotrvac&page=$1 [L]
RewriteRule ^rezum/page/(\d+).html/? index.php?p=smotrrez&page=$1 [L]
уже легче читать код
а вообще термин ЧПУ вводит в заблужение, для оптимизатора смысл в другом - сунуть в урл ключевик, а у вас этого нет...
людям все-равно
index.php?news=156
или
news156.html
bmw.html - это уже интереснее )))
alexspb, хмм.....!Спасибо, обязательно учту это!Хотя по большому счету vacncia и rezume тоже ключевики для сайта про работу :)!Написал следуещее
AddHandler application/x-httpd-php .php .htm .html
RewriteEngine on
DirectoryIndex index.php
RewriteBase /
RewriteRule ^(dobvac|dobrez|obrsvz).html/? index.php?p=$1 [L]
RewriteRule ^(rub|news|rezum|vacan)(\d+).html/? index.php?$1=$2 [L]
RewriteRule ^vacan/page/(\d+).html/? index.php?p=smotrvac&page=$1 [L]
RewriteRule ^rezum/page/(\d+).html/? index.php?p=smotrrez&page=$1 [L]
Проблема осталась!
Поставь перед всеми ссылками на всех страницах "/". htaccess тут не при чем.
pistol, Огромное спасибо!Помагло!