Прогеры, помогите.

12
Ёхан Палыч
На сайте с 07.05.2006
Offline
169
#11
den78ru:
Сайт залил, через несколько часов ДНС обновится и будем посмотреть, может дело в конфиге апача

Достаточно добавить строку в hosts, и можно сразу смотреть.

den78ru:
Фишка в том, что при исходных файлах, страницы открываются и по старым и по новым адресам(если вбивать их руками в адресную строку), только дошло руками проверить. А вот автоматом не переколбашивает почему-то.

Может я неправильно понимаю, но это нормальная работа реврайта. Если надо автоматом переколбашивать, то, возможно, имеется в виду редирект?

den78ru
На сайте с 12.04.2006
Offline
395
#12
Ёхан Палыч:

Может я неправильно понимаю, но это нормальная работа реврайта. Если надо автоматом переколбашивать, то, возможно, имеется в виду редирект?

Я в прогинге полный ноль, так что можно назвать как угодно, но работаетже переколбаска(редирект) на с www.

И эта запись должна работать.

Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.
Ёхан Палыч
На сайте с 07.05.2006
Offline
169
#13

den78ru, просто htaccess с таким содержимым работает нормально

AddType application/x-httpd-php php phtml html htm

Options -Indexes
ErrorDocument 404 /index.php
IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*

RewriteEngine on
RewriteCond %{HTTP_HOST} ^****\.ru(.*)$ [NC]
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [NC]
RewriteRule (.*) http://www.%{HTTP_HOST}/$1 [R=permanent,L]

RewriteRule ^([A-Za-z0-9-]+)/([0-9]+)\.html?$ index.php?page=$1&offset=$2 [R=permanent,L]

Нормальная работа - это открывание и старых и новых урлов, если нужна переадрессация (редирект), то должна помочь строка

RewriteCond %{QUERY_STRING} ^page=([A-Za-z0-9-]+)&offset=([0-9]+)$

RewriteRule ^index.php$ http://localhost/%1/%2.html? [R=301]
den78ru
На сайте с 12.04.2006
Offline
395
#14

Firefox определил, что сервер перенаправляет запрос на этот адрес таким образом, что он никогда не завершится.

Ёхан Палыч
На сайте с 07.05.2006
Offline
169
#15
den78ru:
Firefox определил, что сервер перенаправляет запрос на этот адрес таким образом, что он никогда не завершится.

Я с остальной частью не проверял, R=permanent будет гонять по кругу, все вместе должно выглядеть так:

RewriteEngine on
AddType application/x-httpd-php php phtml html htm
Options -Indexes
ErrorDocument 404 /index.php
IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*

#RewriteCond %{HTTP_HOST} ^****.ru(.*)$ [NC]
#RewriteCond %{HTTP_HOST} !^www.(.*)$ [NC]
#RewriteRule (.*) http://www.%{HTTP_HOST}/$1 [R=permanent,L]

RewriteRule ^([A-Za-z0-9-]+)/([0-9]+).html?$ index.php?page=$1&offset=$2 [L]
RewriteCond %{QUERY_STRING} ^page=([A-Za-z0-9-]+)&offset=([0-9]+)$
RewriteRule ^index.php /%1/%2.html?[R=301]

Работает переадрессация со старых урлов на новые.

С хостами сами разберетесь.

den78ru
На сайте с 12.04.2006
Offline
395
#16

Да ни хрена не работает... Но всё равно спасибо.

S
На сайте с 28.10.2005
Offline
319
#17
den78ru:
Простите за назойливость, а с ("HTTP/1.1 301 Moved Permanently"); 301 передаёт? Т.е. экспериментально проверено?

Так оно правильнее будет:


header ( $_SERVER ['SERVER_PROTOCOL'] . ' 301 Moved Permanently' );

А что ваш сервер передает - смотрите заголовки

sashka_
На сайте с 27.01.2010
Offline
103
#18


RewriteRule ^(.*?)/([0-9]*)\.html(/?)+$ index.php?page=$1&offset=$2 [L]

попробуйте

Знаю PHP, JS, jQuery. Помощь для вашего сайта. (/ru/forum/840509).
den78ru
На сайте с 12.04.2006
Offline
395
#19

Сделали решение на РНР, всем спасибо.

12

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