Форум программистов, компьютерный форум, киберфорум
Apache, htaccess
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/30: Рейтинг темы: голосов - 30, средняя оценка - 4.80
11 / 11 / 0
Регистрация: 07.07.2011
Сообщений: 418

Красивые ссылки

21.06.2013, 19:59. Показов 6706. Ответов 33
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. У меня сайт работает по ссылкам site.ru?p=news&id=1 как можно преобразовать данные ссылки в site.ru/news1 ? И стоит ли это делать? Будет ли грузить систему? Или есть ещё какие подвохи? Заранее спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.06.2013, 19:59
Ответы с готовыми решениями:

Красивые ссылки
Здравствуйте. Есть страница новостей и статей.Помогите сделать вместо ссылки: site/index.php?art_id=5 - site/news ...

красивые ссылки
подскажите, пожалуйста, какие есть способы сделать красивые ссылки при помощи css, например сделать фон не однотонным а,например...

Красивые ссылки
Здравствуйте. Может найдется добрый человек, который поможет реализовать красивые ссылки. Есть ссылки такого типа ...

33
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.06.2013, 22:11
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Makson Посмотреть сообщение
ошибка 500
а просто скопировать код нельзя было?
Цитата Сообщение от Makson Посмотреть сообщение
я так и не понял зачем тут file.php
это файл, для которого это прописывается. я не знаю для какого вам надо
Цитата Сообщение от Makson Посмотреть сообщение
пробовал убирать
его не надо убирать, его надо заменить на нужный
Цитата Сообщение от Makson Посмотреть сообщение
ошибка та же 500
потому что вы неверно скопировали код
0
11 / 11 / 0
Регистрация: 07.07.2011
Сообщений: 418
22.06.2013, 22:19  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
а просто скопировать код нельзя было?

это файл, для которого это прописывается. я не знаю для какого вам надо

его не надо убирать, его надо заменить на нужный

потому что вы неверно скопировали код
видимо я коряво объясняю свою цель.
Code
1
2
RewriteCond %{QUERY_STRING} ^p=([-_a-z0-9]+)&id=(\d+)$ [NC]
RewriteRule ^file\.php /%2/ [R=301,L]
просто скопировал ошибка 500
на что нужно заменить
Code
1
file\.php
если вы сказали, что его нужно менять на тот файл, который мне нужен, мне нужно для этих же файлов, для которых мы используем
Code
1
RewriteRule ^([A-Za-z]+)(\d+)/?$ ?p=$1&id=$2 [L]
P.S. в регулярках плохо разбираюсь, по этому туплю)
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.06.2013, 22:26
Цитата Сообщение от Makson Посмотреть сообщение
просто скопировал ошибка 500
у меня не было там никаких знаков вопроса, поэтому не просто скопировали.
Цитата Сообщение от Makson Посмотреть сообщение
мне нужно для этих же файлов
замените ^file\.php на точку
1
11 / 11 / 0
Регистрация: 07.07.2011
Сообщений: 418
22.06.2013, 22:40  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
у меня не было там никаких знаков вопроса, поэтому не просто скопировали.
замените ^file\.php на точку
Code
1
2
3
4
5
6
7
8
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
 
RewriteRule ^([A-Za-z]+)(\d+)/?$ ?p=$1&id=$2 [L]
RewriteRule ^([A-Za-z]+)/?$ ?p=$1 [L]
 
RewriteCond %{QUERY_STRING} ^p=([-_a-z0-9]+)&id=(\d+)$ [NC]
RewriteRule ^. /%2/$ [R=301,L]
не перенаправляется. но и ошибки 500 не стало
так же пробовал
Code
1
RewriteRule ^. /%1%2/$ [R=301,L]
тот же эффект.
Насчёт знаков вопроса, действительно изменял, пробовал разные варианты.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.06.2013, 22:55
Цитата Сообщение от KOPOJI Посмотреть сообщение
замените ^file\.php на точку
Цитата Сообщение от Makson Посмотреть сообщение
^.
Цитата Сообщение от Makson Посмотреть сообщение
/%2/$
откуда!? Откуда они появляются? Опять я написал?
1
11 / 11 / 0
Регистрация: 07.07.2011
Сообщений: 418
22.06.2013, 23:04  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
откуда!? Откуда они появляются? Опять я написал?
это всё мои эксперименты сначала ваш код пробую, если не работает то пытаюсь разные варианты подобрать, вои получается что скидываю корявый вариант)
По теме:
Code
1
RewriteRule . /%2/ [R=301,L]
никаких ошибок, но и не работает, пишем
Code
1
?p=news&id=1
так и остаёмся на
Code
1
?p=news&id=1
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.06.2013, 23:13
я не знаю.. С этими get вечно проблемы.. попробуйте указать конкретное имя файла вместо точки
0
11 / 11 / 0
Регистрация: 07.07.2011
Сообщений: 418
22.06.2013, 23:26  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
я не знаю.. С этими get вечно проблемы.. попробуйте указать конкретное имя файла вместо точки
ладно буду пробовать, спасибо вам, очень много помогли сделать.
а по вопросу report11 вы сказали что дело в регулярке, это как то лечится?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.06.2013, 23:27
в самом php-скрипте проверяйте, существует ли такая запись. Если нет - выдавайте ошибку из скрипта
1
11 / 11 / 0
Регистрация: 07.07.2011
Сообщений: 418
23.06.2013, 12:57  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
в самом php-скрипте проверяйте, существует ли такая запись. Если нет - выдавайте ошибку из скрипта
спасибо.

Добавлено через 13 часов 22 минуты
пробовал разные варианты и наткнулся на такой
если пишу
за место
Code
1
RewriteRule ^([A-Za-z]+)/?$ ?p=$1 [L]
это
Code
1
RewriteRule ^([A-Za-z0-9]+)/?$ ?p=$1 [L]
то страницы ?=1 работают корректно, да и ошибка с ?p=nabor11111 пропадает, но перестаёт работать регулярка
Code
1
RewriteRule ^(news|category)(\d+)/?$ ?p=$1&id=$2 [L]
в чём подвох?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
23.06.2013, 13:05
Потому что адрес попадает под обе регулярки, поэтому на первой же регулярке завершится (флаг L)
0
11 / 11 / 0
Регистрация: 07.07.2011
Сообщений: 418
23.06.2013, 13:10  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
Потому что адрес попадает под обе регулярки, поэтому на первой же регулярке завершится (флаг L)
получается исправлять только в самом скрипте php как вы и раньше сказали?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6725 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
23.06.2013, 13:12
скорее, исправлять архитектуру, если у вас такая зависимость
1
11 / 11 / 0
Регистрация: 07.07.2011
Сообщений: 418
23.06.2013, 13:14  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
скорее, исправлять архитектуру, если у вас такая зависимость
вы не первый кто мне это говорит, буду переписывать архитектуру, ещё раз спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.06.2013, 13:14

"Красивые" ссылки
Как сделать "красивые ссылки"? :)

красивые сайты
Люди подскажите плиз)) Я учусь кодить сайты чуть меньше года и верстаю шаблоны средне) Но когда я сам хочу создать дизайн сайта у меня...

Красивые формы
Не до конца понимаю как делать красивые формы.ну т.е. не стандартные.а разных форм цветом.например хочу сделать квадратную форму со...

Красивые кнопки
Здравствуйте, не подскажите как создать кнопки с закругленными углами? Вот что у меня сейчас: Как-то можно подгружать из...

Красивые прямоугольники
Красивые прямоугольники Урфин Джюс решил построить своих деревянных солдат в виде красивого прямоугольника. Красивым Урфин Джюс считает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
34
Ответ Создать тему
Новые блоги и статьи
Транслитерация текста с кириллицы на латиницу
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг. Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует. В процессе разработки. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru