Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Проблема с mod_rewrite
Форумы портала PHP.SU » PHP » Программирование на PHP » Проблема с mod_rewrite

Страниц (1): [1]
 

1. vanicon - 05 Января, 2011 - 11:26:21 - перейти к сообщению
Есть ссылка типа: http://test1.ru/category.php?cat_name=transport/, с помощью mod_rewrite получилось преобразовать ее в http://test1.ru/transport/, теперь мне необходимо преобразовать вот такие вот вида ссылки:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. http://test1.ru/category.php?cat_name=transport&page=2/ вот в такую http://test1.ru/transport/page2/,
  3. http://test1.ru/podcategory.php?
  4. cat_name=transport&podcat_name=avto/ в эту http://test1.ru/transport/avto/
  5. и вот такую http://test1.ru/post.php?cat_name=transport&podcat_name=avto&name_post=title-posts/ в такую http://test1.ru/transport/avto/title-posts/
  6.  

Вот код htacces:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <IfModule mod_rewrite.c>
  3. RewriteEngine On
  4. RewriteBase /
  5. RewriteRule ^([a-z]+)/?$ category.php?cat_name=$1  [L,NC]
  6. </IfModule>
  7.  

Помогите разобраться с mod_rewrite!
2. Саныч - 05 Января, 2011 - 12:53:51 - перейти к сообщению
RewriteRule ^([a-z]+)/?$ category.php?cat_name=$1 [L,NC]
RewriteRule ^([a-z]+)/page([0-9]*)/?$ category.php?cat_name=$1&page=$2 [L,NC]
RewriteRule ^([a-z]+)/([a-z]*)/?$ podcategory.php?cat_name=$1&podcat_name=$2 [L,NC]
RewriteRule ^([a-z]+)/([a-z]*)/([a-z-]*)/?$ post.php?cat_name=$1t&podcat_name=$2&name_post=$3 [L,NC]
3. vanicon - 05 Января, 2011 - 13:22:53 - перейти к сообщению
И еще один вопрос, а как теперь запретить ссылки в файле .htaccess. Я имею ввиду что если пользователь в адресной строке броузера введет например:
http://test1[dot]ru/category.php?cat_name=transport/
Можно ли запретить в файле .htaccess вид таких ссылок или чтобы он переходил на страницу404.php с ошибкой 404 ?
4. JustUserR - 06 Января, 2011 - 01:41:44 - перейти к сообщению
vanicon пишет:
И еще один вопрос, а как теперь запретить ссылки
Для осуществления создания произвольной схемы сопоставления предполагаемых пользователем URL-адресов в данной области виртуального хоста и ассоциированных реальных объектов и производимых действий - возможно использование управляющего CGI-скрипа осуществляющего просмотр текущего состояние элемента запроса HTTP-документа и выполняющего требуемые действия по внешнему перенаправлению и генерации требуемого содержимого
5. vanicon - 09 Апреля, 2011 - 21:14:17 - перейти к сообщению
Столкнулся с такой проблемой, мне нужно заменить url адресс вот такой: http://сайт[dot]рф/users/иван/ вот а этот: http://сайт[dot]рф/иван в htaccess прописал так:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <IfModule mod_rewrite.c>
  3. RewriteEngine On
  4. RewriteBase /
  5. RewriteRule ^([a-z-0-9]+)/?$ users/$1 [L,NC]
  6. </IfModule>
  7.  

Но ничего с кириллицей у меня не получилось, вот такой путь выводит:
Y:/home/сайт.рф/www/иван/
Что нужно дописать в htaccess, чтобы решить проблему с кириллицей?

 

Powered by ExBB FM 1.0 RC1