- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Необходимо реализовать структуру страниц сайта в таком виде:
/news
/news/1
/news/1/2092
/news/1/2092
/news/1?sort=date
В .htaccess я прописал правило RewriteRule,
но мне удается только реализовать варианты url без "?......", потому что после преобразования "/news/1?sort=date", все что после "?" не передается, в массиве $_GET их нет.
Как мне сделать полностью работоспособной url - "/news/1?sort=date"
почему бы не реализовать вместо "/news/1?sort=date" -> "/news/1/sort/date", помоему, это намного нагляднее чем куча спец. символов в URL, да и легко в реализации
неудивительно что не передается, вот да же ковыряться не хочется, вы вообще понимаете что значит ([^/]+) и я уж молчу что дальше. + означает присутствие хотя бы одного символа, а значит правило для первого.. и т.д. случаев не подходит.
И правила нужно/стоит прописывать от большего к меньшему.
Кстати вариант "/news/1/sort/date" - более правильный в любом случае.
Как мне сделать полностью работоспособной url - "/news/1?sort=date"
не мудрите лишнего, передавайте всё в скрипт, а там уже $_SERVER['REQUEST_URI'] распарсивайте.
Где-то так:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]
не,
RewriteRule ^(.*)$ /index.php/$1 [L]
Такое сработает только при грамотном разборе внутри скрипта, а задача стояла немного другая...
а задача стояла немного другая...
судя по всему, задача - создавать себе проблемы на пустом месте :)
Dreammaker,
что есть, то есть конечно, :) но я тоже предпочитаю разбирать переменные на уровне mod_rewrite
Так как-то надежнее чтоли, а может дело привычки.
Остановился на
RewriteRule ^(.*)$ /index.php/$1 [L]
и разбивке $_SERVER['REQUEST_URI'] на составляющие функциями php
/news/1/sort/date - не совсем удобен, потомучто вдруг я захожу сделать четвертым - другой параметр, тогда пришлось бы мудрить типа:
/news/1/sort/sort/date или /news/1/sort/view/*** или еще как нибудь.