Я ищу оптимизированное для SEO правило перезаписи URL, которое бы работало на любом обычном PHP-сайте, у которого нет фронт-контроллера. Он будет отображать оптимизированный для SEO URL-адрес непосредственно в файл PHP, который, как обнаружено, существует на сервере, и преобразовывать оставшиеся ветви URL в стандартные параметры URL.
Например:
/ folder1 / folder2 / folder3 / страница / var1 / знач1 / var2 / val2 / var3 / val3
будет соответствовать:
/ folder1 / folder2 / folder3 / page.php? Var1 = val1 & var2 = значение2 & var3 = val3
Теперь вот сложная часть. Поскольку правила перезаписи должны быть полностью независимы от всех имен папок, страниц и переменных, необходимо основывать перезапись параметров URL на точном местоположении по ссылке, где можно найти файл, существующий по пути. Например, рассмотрите, существует ли следующий файл (гипотетически) вне корня документа: / folder1 / folder2.php
В этом случае следующее переопределение будет законным и приемлемым:
/ folder1 / folder2.php? Folder3 = страница & var1 = val1 & var2 = значение2 & var3 = val3
Это будет окончательное правило переписывания для многих уже созданных традиционных веб-сайтов, которые хотят, чтобы их URL-адреса и параметры мгновенно становились дружественными по отношению к URL.
Единственные примеры, которые я обнаружил, включают сопоставление всего для работы с одним фронт-контроллером или иным жестко-закодированным файлом в правиле, которое, как ожидается, будет существовать, вместо того, чтобы mod_rewrite обнаруживал их существование динамически. Они связаны, но не являются гибкими для любого найденного файла: