htaccess mod_rewrite для разных URL на основе динамического идентификатора

1

Привет всем, у меня есть проблема в настройке URL. У меня есть 2 типа URL

в первую очередь

http://domain/index.php?slug=pagename

Я хочу его как http://domain/pagename

Второй

http://domain/index.php?slug=pagename&id=id Я хочу его как http://domain/pagename/id

мой htaccess

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www\.(.+)$

RewriteRule ^ https://%1%{REQUEST_URI} [L,R]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^?]*)$ index.php?slug=$1 

IndexIgnore *
Теги:
.htaccess
mod-rewrite

1 ответ

0

Попробуй это:

RewriteEngine on

RewriteCond %{THE_REQUEST} /index\.php\?slug=([^&]+)&id=([^\s]+) [NC]
RewriteRule ^ %1/%2? [NC,L,R]

RewriteCond %{THE_REQUEST} /index\.php\?slug=([^\s&]+) [NC]
RewriteRule ^ %1? [NC,L,R
RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^([^/]+)/?$ index.php?slug=$1 [NC,L]
RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^([^/]+)/([^/]+)/?$ index.php?slug=$1&id=$2 [QSA,NC,L]
  • 0
    спасибо Starkeen, но моя проблема все еще та же, я использую код, который вы предоставляете, но он не работает, он показывает белый экран с небольшим текстом помощи сайта plz
  • 0
    он отображается как [ссылка на изображение результата] ( imgur.com/mRAoU1j )
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню