htaccess переписать правило SEO дружественный URL со строкой запроса - PullRequest
0 голосов
/ 18 июня 2019

Мне нужны оптимизированные для SEO URL со строкой запроса с использованием .htaccess и получение значений в переменной php $ _GET

http://localhost/blog/categoryslug/postslug/?rf=1234&key=ad2312

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^blog/([0-9a-zA-Z-]+)/([0-9a-zA-Z-]+?)/?$ /blog/detail.php?cat_slug=$1&slug=$2 [L]

но на print_r я получаю только 2 ключа:

print_r($_GET); exit;

Array
(
    [cat_slug] => categoryslug
    [slug] => postslug
)

В то время как мне нужны все ключи и значения в строке запроса, например:

 Array
 (
    [cat_slug] => categoryslug
    [slug] => postslug
    [rf] => 1234
    [key] => ad2312
 )

Пожалуйста, помогите мне решить эту проблему

ТИА

Ответы [ 2 ]

1 голос
/ 18 июня 2019

Попробуйте ниже, я добавил флаг QSA, чтобы добавить исходный входящий запрос к вашему запросу.

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^blog/([0-9a-zA-Z-]+)/([0-9a-zA-Z-]+?)/?$ /blog/detail.php?cat_slug=$1&slug=$2 [L,QSA]
0 голосов
/ 18 июня 2019

Попробуйте этот код:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^blog/([0-9a-zA-Z-]+)/([0-9a-zA-Z-]+?)\?(.*)/?$ /blog/detail.php?cat_slug=$1&slug=$2&$3 [L]
...