Как использовать .htaccess, чтобы сделать URL-адрес типа http://domain.com/query - PullRequest
1 голос
/ 06 ноября 2010

хочу сделать

http://domain.com/index.php?query=query

похоже на

http://domain.com/query

Я знаю, что мне нужно использовать .htaccess, но я не знаю, как подойти к этому.

Ответы [ 2 ]

2 голосов
/ 06 ноября 2010

Что-то вроде:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !index.php
RewriteBase /

RewriteRule ^(.+) /index.php?query=$1

Отредактировано:

Если вы действительно хотите, чтобы ваши URL выглядели так, как вы просили, вы должны разместить все свои медиа-файлы (CSS, JS и изображения) вдругой виртуальный хост, скажем, http://media.domain.com - потому что не может определить разницу, если «query» соответствует имени существующего файла на domain.com.

0 голосов
/ 06 ноября 2010

Ключевое слово для поиска - RewriteRule.

Файл Drupal .htaccess является хорошим примером отображения /? Q = запроса к / query, но не перенаправления вещей, которые обеспечивают явное совпадение - так что /files/something.css, который является реальным файл не будет перенаправлен. Вот соответствующий фрагмент из .htaccess Drupal с ?q=, измененным на ?query=.

RewriteEngine On
RewriteBase /
# Rewrite URLs of the form 'index.php?query=x'.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?query=$1 [L,QSA]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...