При первичной настройке должны быть сразу настроены редиректы. www, / , /// /. index.html
Надо ли так же сразу прописывать редирект с заглавной на строчную? Или только, если появляются дубли и т.д.?
Лучше сразу настроить автоматический редирект для всех страниц с заглавных на строчные. Это позволит избежать ошибок и лишних дублей в будущем.
Вот пример одного из решений:
файл .htaccess
RewriteEngine on
RewriteBase /
# Переключает url в нижний регистр, если найдены символы в верхнем регистре
RewriteCond %{REQUEST_URI} [A-Z]
# Убедитесь, что это не файл на диске.
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule (.*) rewrite-strtolower.php?rewrite-strtolower-url=$1 [QSA,L]
файл rewrite-strtolower.php
<?
if(isset($_GET['rewrite-strtolower-url'])) {
$url = $_GET['rewrite-strtolower-url'];
unset($_GET['rewrite-strtolower-url']);
$params = strtolower(http_build_query($_GET));
if(strlen($params)) {
$params = '?' . $params;
}
header('Location: http://' . $_SERVER['HTTP_HOST'] . '/' . strtolower($url) . $params, true, 301);
exit;
}
header("HTTP/1.0 404 Not Found");
die('Unable to convert the URL to lowercase. You must supply a URL to work upon.');
?>