2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 66
|
|
1 | |
Настройка mod_rewrite (ЧПУ)21.04.2013, 23:39. Показов 9436. Ответов 140
Метки нет (Все метки)
имеется сайт на котором нужно сделать ЧПУ на htaccess
страницы имеют вид http://mysyte.ru/page.php?title_url=mypage&id=30 первую часть у меня получилось преобразовать http://mysyte.ru/page.php?title_url=mypage в http://mysyte.ru/mypage а вот с &id=30 не получается с первой частью я поступил так: Код
RewriteRule ^page.php/?title_url=$ [R=301,L] RewriteRule ^([A-Za-z0-9-]+)/?$ page.php?title_url=$1 [L] Код
RewriteRule ^page.php/?title_url=$1&id=$ [R=301,L] RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ page.php?title_url=$1&id=$2 [L] Добавлено через 1 час 41 минуту пишу так Код
RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/?$ page.php?title_url=$1&id=$2 [L] Добавлено через 1 час 17 минут видимо тут никогда не дождаться помощи!
0
|
21.04.2013, 23:39 | |
Ответы с готовыми решениями:
140
mod_rewrite ЧПУ Mod_rewrite и ЧПУ Не работает ЧПУ (mod_rewrite) ЧПУ htaccess и mod_rewrite? |
2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 66
|
|
22.04.2013, 14:54 [ТС] | 21 |
вот при таком раскладе работает http://s808.local/Transfers-in-Czech-Republic.php
Код
RewriteRule ^(.*)/?$ page.php?title_url=$1 [L]
0
|
Сексуальный
84 / 49 / 1
Регистрация: 02.04.2013
Сообщений: 443
|
|
22.04.2013, 14:56 | 22 |
0
|
2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 66
|
|
22.04.2013, 15:03 [ТС] | 23 |
только эта часть http://s808.local/Residence-permit-Czech-Republic и только без слеша на окончании
Добавлено через 2 минуты и только если написать RewriteRule ^(.*)/?$ page.php?title_url=$1 [L] без /? после скобок не рабоатет
0
|
2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 66
|
|
22.04.2013, 15:07 [ТС] | 25 |
0
|
Сексуальный
84 / 49 / 1
Регистрация: 02.04.2013
Сообщений: 443
|
|
22.04.2013, 15:11 | 26 |
Чем черт не шутит
Код
RewriteRule ^(.*)/(.*)[/]?.*$ page.php?title_url=$1&id=$2 Сорри лень щас вспоминать регулярки и гуглить про Апач.
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
22.04.2013, 15:11 | 27 |
Так.. и что же находится в этом загадочном page.php ? Такой код
Код
#что этот RewriteRule ^(.*)$ page.php?id=$1 [L] #что этот RewriteRule . page.php [L]
0
|
2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 66
|
|
22.04.2013, 15:21 [ТС] | 28 |
в каком смысле? в нем идее reqire_once "страница в которой по функции $_GET['title_url'] идет запрос к БД на выборку всех полей из таблицы такой-то где title_url = $title_url "; если я правильно понял ваш вопрос то вот как-то так.
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
22.04.2013, 15:26 | 29 | |||||
разместите в файле page.php, в самом начале, такой код:
Добавлено через 55 секунд в .htaccess оставьте код Код
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ page.php?id=$1 [L]
0
|
2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 66
|
|
22.04.2013, 15:28 [ТС] | 30 |
и полный путь другому файлу у меня реализован так http://s808.ru/page.php?title_... sion&id=24
он получает id из ссылки на странице page.php
0
|
Сексуальный
84 / 49 / 1
Регистрация: 02.04.2013
Сообщений: 443
|
|
22.04.2013, 15:33 | 31 |
0
|
2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 66
|
|
22.04.2013, 15:37 [ТС] | 32 |
вот результаты:
http://s808.local/Order-Transfer/21 - array(1) { ["id"]=> string(17) "Order-Transfer/21" } http://s808.local/page.php?tit... sfer&id=21 - array(2) { ["title_url"]=> string(14) "Order-Transfer" ["id"]=> string(2) "21" } http://s808.local/page.php?tit... h-Republic - array(1) { ["title_url"]=> string(31) "Residence-permit-Czech-Republic" } http://s808.local/Residence-permit-Czech-Republic - array(1) { ["id"]=> string(31) "Residence-permit-Czech-Republic" }
0
|
Сексуальный
84 / 49 / 1
Регистрация: 02.04.2013
Сообщений: 443
|
|
22.04.2013, 15:43 | 33 |
Стоп дык это и есть ваш вариант первоначальный и как я и говорил путь к CSS файлам под него попадает, снова напишите свой вариант и не забудьте
Код
RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
22.04.2013, 15:46 | 34 |
Так, отлично. php-файл не трогаем, оставляем тот же код. Меняем .htaccess
Код
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([-_A-Za-z0-9]+)/?$ page.php?title_url=$1 [L] RewriteRule ^([-_A-Za-z0-9]+)/(\d+)/?$ page.php?title_url=$1&id=$2 [L] Добавлено через 1 минуту Еще как будет -d - является директорией -f - является файлом Восклицательный знак перед - отрицание, т.е. "Если файл не является директорией и не является файлом, то..."
0
|
2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 66
|
|
22.04.2013, 15:46 [ТС] | 35 |
прошу прощения стараюсь решить проблему от-того и весь поглощен в процессе не увидел Ваше сообщение!
При вводе вашего варианта никакой реакции работают только полные пути
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
22.04.2013, 15:47 | 36 |
0
|
Сексуальный
84 / 49 / 1
Регистрация: 02.04.2013
Сообщений: 443
|
|
22.04.2013, 15:49 | 37 |
0
|
2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 66
|
|
22.04.2013, 15:53 [ТС] | 38 |
вот результат
http://s808.local/Family-reunification - array(1) { ["title_url"]=> string(20) "Family-reunification" } - работает http://s808.local/page.php?tit... nification - array(1) { ["title_url"]=> string(20) "Family-reunification" } - работает http://s808.local/page.php?tit... sfer&id=21 - array(2) { ["title_url"]=> string(14) "Order-Transfer" ["id"]=> string(2) "21" } - нормально работает http://s808.local/Order-Transfer/21 - array(2) { ["title_url"]=> string(14) "Order-Transfer" ["id"]=> string(2) "21" } - без CSS все выводится
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|||||||||||
22.04.2013, 15:58 | 39 | ||||||||||
вот если введете путь к css файлу, тогда его и получите.
Добавлено через 1 минуту Итого: 1. регулярки рабочие, проблема в php-коде - т.к. обработка срабатывает так, как и должна - отправляет запрос на php-файл. 2. По поводу css - я уже писал, и не раз что нужно сделать - поставить слэш в начале путей Добавлено через 2 минуты было
0
|
Илья Федин
|
22.04.2013, 15:58
Настройка mod_rewrite (ЧПУ)
#40
|
Не по теме: Интересный случай... :umnik:
0
|
22.04.2013, 15:58 | |
Чпу, mod_rewrite и .htaccess Проблемы с настройкой ЧПУ в mod_rewrite mod_rewrite - как сделать ЧПУ? Реализация ЧПУ на сайте (mod_rewrite) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |