Переписать каталог в строку запроса - PullRequest
0 голосов
/ 11 октября 2019

У меня есть каталог, в котором перечислены все резиденции, которые у нас есть http://example.com/residencies/, когда вы нажимаете на место жительства, оно ссылается на http://example.com/residencies/myhouse, теперь мне нужен .htaccess, чтобы переписать адрес на http://example.com/residencies/details.php?id=myhouse

У меня есть

  RewriteCond %{QUERY_STRING} !(?:^|&)id= [NC]
  RewriteRule ^residencies/(.+)$ /residencies/details.php?id=$1 [QSA]

Это сделает перенаправление, но также попытается перенаправить http://example.com/residencies/ на http://example.com/residencies/details.php?id=, что выдает ошибку. Как сделать так, чтобы оно игнорировало правило перезаписи, если нет идентификатора?

1 Ответ

0 голосов
/ 13 октября 2019

Я нашел ответ на свой вопрос для кого-то, у кого есть такой же вопрос: как я его решил

# residencies rewrite
RewriteCond %{REQUEST_URI}  ^/residencies/$
RewriteRule ^(.*)$ /residencies/index.php [NC,L]

RewriteCond %{REQUEST_URI}  !^/residencies/$
RewriteCond %{REQUEST_FILENAME} !(index.php|details.php) [NC]
#RewriteCond %{QUERY_STRING} !id= [NC]
RewriteRule ^residencies/([^/]+)/?$ /residencies/details.php?id=$1 [NC,QSA,L]
...