Как изменить правило RewriteRule в файле htaccess?

Как изменить код htaccess, чтобы он принимал как параметры числа после разделителя "_" и принимал разделенные "/" строки без ".html" в конце, разделенные на три параметра? Ниже приведен текущий код htaccess:

```apache
RewriteRule ^.+_(\d+)+_([\a-z,0-9]+)+\.html$ index.php?id=$1&it=$2
```

Как изменить его для достижения требуемого результата?
  • 22 октября 2023 г. 5:48
Ответы на вопрос 1
Чтобы изменить правило RewriteRule в файле htaccess так, чтобы он принимал как параметры числа после разделителя "_" и принимал разделенные "/" строки без ".html" в конце, разделенные на три параметра, вы можете внести следующие изменения в текущий код htaccess:

```apache
RewriteRule ^([\d]+)_(.+)/?$ index.php?id=$1&path=$2 [L]
```

В этом новом правиле мы используем выражения в круглых скобках для того, чтобы захватить две группы параметров. 

Первая группа [\d]+ будет соответствовать числу после разделителя "_". Затем эта группа будет передаваться в index.php в качестве параметра "id".

Вторая группа .+ будет соответствовать разделенным "/" строкам без ".html" в конце. Затем эта группа будет передаваться в index.php в качестве параметра "path".

Флаг [L] указывает серверу Apache прекратить дальнейшую обработку правил, если это правило соответствует запросу.

Обратите внимание, что эти изменения будут требовать, чтобы в вашем файле index.php вы обрабатывали параметры "id" и "path" из URL-адреса.
Похожие вопросы