|
|
|
| Здравствуйте. Не могли бы мне помочь написать RewriteRule для .htaccess
У меня есть страница user.php и уме я через GET передаю параметр nic=USERNAME (в итоге урл такой site.ru/user.php?nic=USERNAME)
но я также хочу чтобы эта страница работала по адреcу site.ru/user/USERNAME
Спасибо | |
|
|
|
|
|
|
|
для: daornet
(19.12.2009 в 16:16)
| |
RewriteEngine On
RewriteRule ^user/([A-Za-z0-9-]+)?$ index.php?nic=$1 [L]
|
| |
|
|
|
|
|
|
|
для: neadekvat
(19.12.2009 в 16:38)
| | Спасибо огромное | |
|
|
|
|
|
|
|
для: neadekvat
(19.12.2009 в 16:38)
| | я сделал так - же
RewriteEngine on
RewriteRule ^blog/([^/\.]+)/?$ blog.php?id=$1 [L]
|
Но при переходе выдает http://домен.ru/blog.php?id=1 если вручную набрать http://домен.ru/blog/1 тоже работает. Как сделать что бы сразу вот так http://домен.ru/blog/1 ?
ps в файле blog.php есть это
<head>
<base href=http://blog.ru>
</head>
|
| |
|
|
|
|
|
|
|
для: vorobey
(15.07.2010 в 16:23)
| | вот этот поток сознания - Но при переходе выдает http://домен.ru/blog.php?id=1 если вручную набрать http://домен.ru/blog/1 тоже работает - поясните, пожалуйста. | |
|
|
|
|
|
|
|
для: Trianon
(16.07.2010 в 11:54)
| | Имеется ввиду что ссылка остается такая же(http://домен.ru/blog.php?id=1) - ничего не меняется. Думал что оно само должно все переводить если ввел домен.ru/blog.php?id=1 - автоматом стать домен.ru/blog/1.
Вот по такому принципу
RewriteCond %{HTTP_HOST} ^www.blog.ru
RewriteRule (.*) http://blog.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://www.blog.ru/ [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.blog.ru/ [R=301,L]
|
что бы не набрал перед доменом www, WWW ,до index.php все становится вида http://блог.ру.
Я понял наверно свою ошибку, очевидно и ссылку надо делать http://домен.ru/blog/1 -
ps так и надо было сделать (вопрос выше отменен :) )
А как сделать перевод на http://домен.ru/blog/1 если вводиш http://домен.ru/blog.php?id=1 ---- ? | |
|
|
|
|
|
|
|
для: vorobey
(16.07.2010 в 18:56)
| | >Имеется ввиду что ссылка остается такая же(http://домен.ru/blog.php?id=1) - ничего не меняется.
Ничего не меняется при каком событии?
Ссылки, насколько я понимаю, генерируются Вашим же скриптом.
Там их и нужно менять. | |
|
|
|
|
|
|
|
для: Trianon
(17.07.2010 в 10:24)
| | поясню смысл чего я добиваюсь.
эта ссылка
1) http://домен/blog/165 (скрипт генерирует эту)
и эта
2) http://домен/blog.php?id=165
Ведут на одну и туже страницу. Если пользователь набирает вторую ссылку , то она редиректится на первую - нужно так!
Для чего маразм этот? Делаю небольшой движок для сателитов,бирж... Вобщем поисковые системы определяют продажные url. Индексную страницу я привел в порядок(там было 3 варианта www.домен.ru ;www.домен.ru/index.php; домен.ru/index.php;) - я сделал только домен.ru .
ps если ссылка "от биржи" и расположена по первому url, а если набрать вторую ссылку, то ее там не будет! | |
|
|
|
|
|
|
|
для: vorobey
(19.07.2010 в 00:08)
| | И как вы осуществили
www.домен.ru/index.php -->www.домен.ru без зацикливания? | |
|
|
|
|
|
|
|
для: oliss
(19.07.2010 в 06:53)
| | Вот так. в .htaccess
RewriteCond %{HTTP_HOST} ^www.blog.ru
RewriteRule (.*) http://blog.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://www.blog.ru/ [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.blog.ru/ [R=301,L]
|
все варианты. | |
|
|
|
|
|
|
|
для: vorobey
(21.07.2010 в 18:25)
| | Если кто-то еще не разобрался, вот http://ru.wikipedia.org/wiki/%D0%A7%D0%B5%D0%BB%D0%BE%D0%B2%D0%B5%D0%BA%D0%BE-%D0%BF%D0%BE%D0%BD%D1%8F%D1%82%D0%BD%D1%8B%D0%B9_URL , почитайте. | |
|
|
|