Я хотел бы использовать правило перезаписи, чтобы очистить мой URL

Я хотел бы очистить свой URL с помощью RewriteRule в .htacces.

Я хотел бы изменить /product/detail.php?id=red-shirt что-то вроде этого / Продукт / красно-рубашка.

Я пытался использовать это RewriteRule ^ /? Product / ([^ / d] +) /? $ /Product/detail.php?id=$1 [L, QSA] Но это не работает.

1

Решение

Вы получаете 404, потому что ваше регулярное выражение не так. Используйте это правило, чтобы исправить это:

# If the request is not for a valid directory
RewriteCond %{REQUEST_FILENAME} !-d
# If the request is not for a valid file
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^product/([^/]+)/?$ /product/detail.php?id=$1 [L,NC,QSA]
1

Другие решения

Я все время получу 404 Ошибка.
Если я изменю / d на \ d, я получу внутреннюю ошибку сервера 500

0

По вопросам рекламы [email protected]