Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Два варианта обращения к сайту
 
 автор: Владимир55   (12.12.2011 в 15:50)   письмо автору
 
 

Подскажите пожалуйста, как правильно сделать редирект, чтобы когда обращаются к сайту по адресу http://site.ru/index.php, происходил бы внутренний редирект и в адресной строке было бы http://site.ru/

Какой конкретно строкой в htaccess это можно осуществить?

(index.php - стартовая страница).

  Ответить  
 
 автор: cheops   (12.12.2011 в 16:18)   письмо автору
 
   для: Владимир55   (12.12.2011 в 15:50)
 

Этого нельзя сделать, дело в том, что при составлении правила, все-равно остается адрес http://site.ru/index.php, к которому Apache должен иметь доступ, чтобы правильно отобразить http://site.ru/.

  Ответить  
 
 автор: Владимир55   (12.12.2011 в 16:40)   письмо автору
 
   для: cheops   (12.12.2011 в 16:18)
 

Ну да, я так и подумал, что он зациклится...

Спасибо!

  Ответить  
 
 автор: Владимир55   (13.12.2011 в 16:18)   письмо автору
 
   для: Владимир55   (12.12.2011 в 16:40)
 

Вроде бы, работает вот так:

RewriteEngine On
RewriteBase /

RewriteCond %{HTTPS} !=on
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.*)index\.php\ HTTP/ [NC]
RewriteRule ^.*$ http://site.ru/%1 [R=301,L]

  Ответить  
 
 автор: cheops   (13.12.2011 в 18:16)   письмо автору
 
   для: Владимир55   (13.12.2011 в 16:18)
 

Если результат видно - значит все хорошо, с mod_rewrite обычно проблема в том, что они не работают и не сразу сообразишь в чем дело и куда копать (декларативный стиль - сложно отлаживать).

  Ответить  
 
 автор: deimand   (14.12.2011 в 09:28)   письмо автору
 
   для: Владимир55   (13.12.2011 в 16:18)
 

Мне во всех этих редиректа не нравится то, что перенаправление "палится".

Если все это делается от дублирования контента для поисковых систем, то это одно, но скрыть таким образом язык, на котором написан сайт не получится, или сказать, что якобы существующей дериктории нет.

Если обращаться к несуществующему адресу, и к адресу который закрыт от лишних глаз, происходят совсем разные действия сервера. Firebug отлично это показывает.

  Ответить  
 
 автор: Владимир55   (15.12.2011 в 10:18)   письмо автору
 
   для: deimand   (14.12.2011 в 09:28)
 

Если все это делается от дублирования контента для поисковых систем, то это одно

Не могли бы Вы прокомментировать эту мысль?

  Ответить  
 
 автор: cheops   (15.12.2011 в 13:17)   письмо автору
 
   для: Владимир55   (15.12.2011 в 10:18)
 

Вероятно имеется в виду ситуация, описанная в вашей теме Политика канонизации обращения к сайту.

  Ответить  
 
 автор: Владимир55   (15.12.2011 в 19:54)   письмо автору
 
   для: cheops   (15.12.2011 в 13:17)
 

Наверное.

А то я предположил, что, вдоруг deimand имеет в виду что-то другое, чего я не знаю...

  Ответить  
 
 автор: SerG7   (14.12.2011 в 11:55)   письмо автору
 
   для: Владимир55   (13.12.2011 в 16:18)
 

RewriteCond %{THE_REQUEST} ^.*/index\.php
RewriteRule ^(.*)index.php$ http://%{HTTP_HOST}/$1 [R=301,L]

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования