Эй, ребята, я пытаюсь реализовать один из ответов, которые я получил на другой вопрос, который я задал здесь пару дней назад. Вы можете найти оригинальный вопрос здесь: Mod_rewrite уточняющий вопрос. Только для динамических URL?
Самый полезный ответ, который я моделирую после реализации, следующий:
Я предполагаю, что ответ, который дал meder, - это тот, который вы ищете, но технически вы можете создать файл статической карты, чтобы перенаправить набор строк заголовка на идентификаторы, и он не должен выполнять внешний исполняемый файл prg:
RewriteMap static-title-to-id txt:/tmp/title_to_id.txt
RewriteRule ^/health-and-fitness-tips/(.*)/ /health-and-fitness-tips/${static-title-to-id:$1}/ [L]
с содержимым файла /tmp/title_to_id.txt примерно так:
how-do-I-lose-10kg-in-12-weeks 999
some-other-title 988
and-another 983
Хорошо, достаточно фона. Мой файл .htaccess в настоящее время содержит следующее:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Это типичная настройка постоянных ссылок WordPress. Однако, когда я пытаюсь добавить правила, подобные тем, которые представлены в выбранном ответе выше, я получаю внутреннюю ошибку сервера.
Это мой файл .htaccess, когда я получаю внутреннюю ошибку сервера:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteMap static-title-to-id txt:/tmp/title_to_id.txt
RewriteRule ^/health-and-fitness-tips/(.*)/ /health-and-fitness-tips/${static-title-to-id:$1}/ [L]
</IfModule>
Я надеюсь, что моя проблема - нечто простое, например, конфликт правил. Если вы видите ошибку или можете указать здесь какое-либо направление, это будет высоко оценено.