Я установил свой первый сайт Nginx, и все важные изменения были выполнены. Они должны были быть ручными, никакие правила, возможно, не справились бы с этим, поэтому у меня есть множество правил, подобных этому, для обработки старых URL-адресов, которые могут быть проиндексированы или добавлены в закладки:
rewrite ^/html/Air_III.html /designers-elements-air permanent;
Есть еще один набор странных файлов, которые, кажется, привлекают трафик в тех частях сайта, которые мы еще не успели просмотреть, поэтому я просто скопировал их. Большинство из них были переименованы в .php из старого .html и в остальном не изменились, но, вероятно, некоторые из них остались .html.
Я ищу правило, которое будет обрабатывать случай запроса любого файла .html в любом каталоге, который фактически не соответствует текущему файлу с таким именем и будет перезаписан в файл .php, если он существует.
На языке Apache это будет redirect permanent
а не переписывать. Я бы предпочел не отслеживать все это и делать вручную!
Вам понадобится if
заявление чтобы проверить существование файла и соответствующим образом перезаписать:
location ~ \.html$ {
if (!-f $request_filename) {
rewrite ^(.*)\.html$ $1.php permanent;
}
}