для нашего клиентского проекта нам нужно перенаправить все url-вызовы в соответствующее расширение .php-файла. это делается для рейтинга SEO (google). избегая индексации обоих url (с * .php и без)apache перенаправить 301 на .php расширение файла
Мы пытаемся сделать это с использованием файла .htaccess (общий хост), но, похоже, он работает только для перенаправления с другим URL-адресом, а не с тем, который просто добавив расширение «.php».
разные URL работы
abc -> abc2.php
Тот же URL не работает
abc -> abc.php
вот наш пример кода:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.abc\.co.uk
RewriteRule (.*) http://www.abc.co.uk/$1 [R=301,L]
# this doesn't work
Redirect 301 /test http://www.abc.co.uk/test.php
# this redirect works as the url is different
Redirect 301 /test-abc http://www.abc.co.uk/abc.php
мы размещаем с 1 & 1 общий хост-сервер. PHP версия 5.5
Я также попробовал этот код, который перенаправляет но страница не загружается прямо сейчас: (. * | HTML)
RewriteRule ^(.+)\.(.*)$ http://abc.co.uk/$1.php [R,NC]
также заметил URL без расширения файла не будет перенаправлять
Спасибо за ваш ответ. Я пробовал его с 302 и 301, и он не работает. – Gadi
Ошибка, это не перенаправление. попробуйте с abc.co.uk/abc, если необходимо перенаправить на abc.co.uk/abc.php – Gadi
, нам действительно нужно работать с .php. все остальное работает нормально. эта строка работает, но страница не загружается (url is) RewriteRule^(. +) \. (. *) $ http://www.abc.co.uk/$1.php [R, NC] – Gadi