Вопрос по sitemap. Были страницы .html, сделал .php.

1 234 5
ValdisRu
На сайте с 02.10.2006
Offline
139
#21
Chukcha:
ЁЁЁ!
На пальцах объясняю...
У Вас была страница
pаge.html проиндексирована
В ходе своих манипуляций, вы сделали
page.php? возможно еще не проиндексирпована.
Чтобы не задублироваться
Вам нужно, чтобы страниц с .php не было, а аоставалас вес с html
Для этого существует правила
RewriteRule ^(.*)\.html $1.php [NC]
RewriteRule ^(.*)\.htm$ $1.php [NC] # Это так на всяк случай
Но чтобы защититься от всяких левых ссылок вам предлагают сделать редирект с php на hml
RewriteRule ^(.+)\.php $1.html [L, R=301]

Дальше ломайте свой моск сами.

дело в том что тут не все так просто как казалось с первого взгляда

попробовал и если одновременно два эти правила то получается "бесконечное перенаправление"

кароче надо подумать

Обалденный заработок на социальных сетях (https://goo.gl/Qtsq6M)
C
На сайте с 04.02.2005
Offline
277
#22

Потому что нужно еще и моск иногда включать, и литературку почитывать

RewriteRule ^(.*)\.html $1.php [L]

RewriteRule ^(.*)\.htm$ $1.php [L]

S
На сайте с 21.12.2012
Offline
9
#23
ValdisRu:
дело в том что тут не все так просто как казалось с первого взгляда
попробовал и если одновременно два эти правила то получается "бесконечное перенаправление"

кароче надо подумать

php страницы еще в индекс не зашли.

Зашли только html страницы.

Может быть мне в начале php страниц прописать отдельное перенаправление на страницу c расширением html?

Только для тех которые зашли в индекс. Сделать перенаправление не в htaccess, а в коде этих страниц самих, я где то видел, что так можно сделать. Отдельно к страницам определенным. ТОлько строку перенаправления я незнаю какую надо туда вставлять. Не могу найти сайт тот где это говорилось.

А остальные страницы я буду делать уже с php. И они соответственно будут заходить в индекс уже только под видом пэхэпэшных. Т.е. в начале когда у них уже никакого перенаправления стоять не будет.

VHS-1980
На сайте с 21.05.2010
Offline
91
#24
spsayapin:
короче я совсем запутался.
думаю что теперь мой сайт пойдет под слом.

Не нужно истерик. Сломать сайт тремя строчками в htaccess... на файлах... Если Вам это удастся - то сайтостроение не для Вас.

Вам нужно:

1 - редирект с кодом 301 со страниц с расширением php на аналогичную с расширением html.

2 - перенаправление запроса к странице html на страницу php без редиректа, просто просьба к серверу выполнить другой файл.

окончание обработки правил переадресации достигается путем добавления флага [L]. Поэтому цикличных обращений не будет.

C
На сайте с 04.02.2005
Offline
277
#25

Нет разницы... делайте как хотите, но у вас уже есть страницы в индексе, вот от них и отталкивайтесь

VHS-1980
На сайте с 21.05.2010
Offline
91
#26

Блин, ну чукча же уже все разжевал =(


RewriteRule ^(.+)\.php $1.html [L, R=301]
RewriteRule ^(.*)\.html $1.php [L]
RewriteRule ^(.*)\.htm$ $1.php [L]
C
На сайте с 04.02.2005
Offline
277
#27
Блин, ну чукча же уже все разжевал =(

offtop

Так все знают, что Чукча не читатель. И редко, кто читает писателя Чукчу :)

/offtop

VHS-1980
На сайте с 21.05.2010
Offline
91
#28
spsayapin:
php страницы еще в индекс не зашли.
Зашли только html страницы.

Может быть мне в начале php страниц прописать отдельное перенаправление на страницу c расширением html?
Только для тех которые зашли в индекс. Сделать перенаправление не в htaccess, а в коде этих страниц самих, я где то видел, что так можно сделать. Отдельно к страницам определенным. ТОлько строку перенаправления я незнаю какую надо туда вставлять. Не могу найти сайт тот где это говорилось.

А остальные страницы я буду делать уже с php. И они соответственно будут заходить в индекс уже только под видом пэхэпэшных. Т.е. в начале когда у них уже никакого перенаправления стоять не будет.

Зашли, это не значит, что робот о php страницах ЕЩЕ ничего не знает.

Не трогайте код страниц. Делайте как и раньше. В тексте только ссылки на страницы с html. И добавьте правило выше в htaccess.

А то потом Вы дойдете до сессий и у Вас снова сайт поломается.

ValdisRu
На сайте с 02.10.2006
Offline
139
#29

у меня одна единственная строчка

RewriteRule ^(.+)\.php $1.html [L, R=301]

приводит к Internal Server Error

может апач какой то кривой (денвер)

---------- Добавлено 26.12.2012 в 18:39 ----------

с тремя строчками

RewriteRule ^(.+)\.php $1.html [L, R=301]

RewriteRule ^(.*)\.html $1.php [L]

RewriteRule ^(.*)\.htm$ $1.php [L]

тоже самое

C
На сайте с 04.02.2005
Offline
277
#30

ValdisRu, да у денвера замечал,

[L, R=301]

вот здесь, попробуйте убрать пробел

1 234 5

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий