2012-06-13 4 views
0

Я потратил пару часов, пытаясь добиться чего-то, что я считал легким. У меня есть domain.tld/index.php?site=Page и хочу, чтобы оно превратилось domain.tld/Page. ?site=Page относительно того, что он получает из базы данных MySQL.URL Rewrite querystring in htaccess

В какой-то момент у меня возникла бесконечная петля, но все остальное ничего не произвело. Это может иметь какое-то отношение к тому, что я не понимаю^в RewriteRule и Cond. Но структура /var/www/whine/skovtrup - whine - это домен и skovtrup - это папка, в которой я работаю с веб-сайтом, на котором мне нужно переписать. <Directory> установлен в /var/www/whine в файле с поддержкой сайтов.

Надеюсь, вы, ребята, можете мне помочь.

Просто, чтобы подвести итог:

  • Заменить сайт = Страница с/Page/
  • Page относительна?.
  • Размещено в/вар/WWW/скулить/skovtrup

ответ

1

Будет ли этот код поможет вам?

RewriteEngine On 
RewriteBase /skovtrup/ 
RewriteRule ^index\.php$ %{QUERY_STRING} [C] 
RewriteRule site=(.*) /skovtrup/$1? [R=301,L] 

^ символ представляет собой начало URL-адрес, и $ конец.

Для моего кода, увидеть некоторые explainations здесь: Redirect old page url after .htaccess url rewriting

+0

Я переместил его в другую неиспользованной области, для тестирования. Но это не сработает. При попытке я получаю ошибку 500. (Удалена папка и попыталась перейти на код, чтобы она соответствовала) Это не сработало, прежде чем я переместил его, и изменения, которые я сделал, тоже не работают. – user1453559

+0

Он работает для меня с базовым архивом ('localhost/skovtrup /'). У вас должен быть код паразита. Вы пробовали написать абсолютный путь для 301 перенаправления? (на самом деле '/ skovtrup/$ 1?') – zessx

+0

Просто, чтобы быть уверенным. Где вы помещаете файл .htaccess? – user1453559