У меня есть ситуация перенаправления, когда сайт является частично динамическим и частично сгенерированным .html-файлами.
Например, mysite.com/homepage и mysite.com/products/42 фактически являются статическими html-файлами
Принимая во внимание, что другие URL генерируются динамически, как mysite.com/cart
И mysite.com, и www.mysite.com указывают на одно и то же место.Однако я хочу перенаправить весь трафик с mysite.com на www.mysite.com.
Я так близко, но столкнулся с проблемой, когда Apache добавляет .html в конец моегоURL-адреса для всего, где существует статический файл .html - что я не хочу.
Я хочу перенаправить это:
http://mysite.com/products/42
На это:
http://www.mysite.com/products/42
Но вместо этого Apache делает это (потому что 42.html - это настоящий HTML-файл):
http://www.mysite.com/products/42.html
Я не хочу этого - я хочу, чтобы он перенаправлял на www.mysite.com/products/ 42
Вот с чего я начал:
RewriteCond %{HTTP_HOST} ^mysite\.com$ [NC]
RewriteRule ^(.*)$ http://www.mysite.com/$1 [R=301,L]
Я попытался сделать параметры и .html необязательными, но .html все еще добавляется на перенаправление:
RewriteCond %{HTTP_HOST} ^mysite\.com$ [NC]
RewriteRule ^(.*)?(\.html)?$ http://www.mysite.com/$1 [R=301,L]
Что я делаю не так?Очень ценю это:)