Проблемы с переписыванием URL htaccess, не может переписать любой URL, но с www на non-www работает нормально - PullRequest
0 голосов
/ 06 января 2012

Последние пару дней у меня были проблемы с этим, я искал учебники и примеры других людей (в том числе много с этого сайта), но я просто не могу заставить его работать.

В настоящее время мой файл .htaccess выглядит так:

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301]

RewriteRule ^forside/([0-9]+)$ index.php?main=forside

Мне нужно изменить domain.dk/index.php?main=forside на домен.dk/forside.

и domain.dk/index.php?main=article&id=10 на домен.dk/article/10

Я заглянул в свой phpinfo () и, похоже, не могу найти никакой информации о том, поддерживает ли сервер mod_rewrite или нет, но перенаправление с www на non-www работает отлично, так что вот где я немного потерян.

Если у кого-то есть представление о том, что идет не так или как я могу это исправить, это будет с благодарностью.

1 Ответ

0 голосов
/ 06 января 2012

У вас есть два разных паттерна для forside и артикулов , поэтому у вас должно быть два разных правила.

RewriteRule ^forside$ index.php?main=forside
RewriteRule ^article/([0-9]+)$ index.php?main=article&id=$1

Если вы хотите сжать их до одногоВы можете использовать следующее (не проверено).Однако это не так строго, как указано выше.

RewriteRule ^(forside|article)(:?/|/([0-9]+))$ index.php?main=$1&id=$2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...