301 перенаправление на url без расширения

Richard спросил: 26 декабря 2017 в 08:01 в: php

Я пытаюсь настроить свой сайт без расширений файлов в URL-адресах.

Все мои страницы php.

Все ссылки в меню имеют удаленные расширения, например .. .

<a href="page1">page 1</a>
<a href="page2">page 2</a>
<a href="page3">page 3</a>

И эти ссылки работают нормально.

Но я пытаюсь настроить файл .htaccess, чтобы сделать 301 переадресацию из других внешних ссылок, например, Google.

В моем файле htaccess у меня есть ...

Redirect 301 /page1.php https://www.mysite.co.uk/page1

Но это делает ссылку с сайта Google на странице 404 не найденной - это не идет на страницу, которая должна быть.

Что я делаю неправильно, и как я могу заставить эти 301 перенаправления работать правильно?

EDIT

Чтобы попытаться отладить это, я изменил файл htaccess. Мой полный код htaccess теперь это ...

DirectoryIndex index.phpCheckSpelling OffFileETag none
ServerSignature OffOptions +FollowSymlinksRedirect 301 https://www.mysite.co.uk/page1.php https://www.mysite.co.uk/page1
Redirect 301 https://mysite.co.uk/page1.php https://www.mysite.co.uk/page1
Redirect 301 http://www.mysite.co.uk/page1.php https://www.mysite.co.uk/page1
Redirect 301 http://mysite.co.uk/page1.php https://www.mysite.co.uk/page1
Redirect 301 www.mysite.co.uk/page1.php https://www.mysite.co.uk/page1

Теперь, если я следую ссылке меню, я получаю ...

https://www.mysite.co.uk/page1

Если я введу https://www.mysite.co.uk/page1 в адресную строку браузера, он загрузит страницу правильно.

НО, если я последую ссылке из Google, она заканчивается up ...

http://www.mysite.co.uk/page1.php

Как это может быть?!

Я рассмотрел все возможные URL-адреса в файле htaccess, поэтому как эта ссылка google go к файлу http:// с .php в конце?

0 ответов