Forum Webscript.Ru
Программирование => PHP => Тема начата: saska от 03 Октября 2003, 16:06:56
-
Собственно на данный момент сайт имеет динамический контент. Соответственно чтобы поисковики индексировали, имеется htacces, в котором включен механизм редиректа (или как он там называется), имеется index.php, в котором в зависимости от $REQUEST_URI выдается Header location. Например
if ($REQUEST_URI=="/index/main.html") HEADER("Location: http://blabla.ru/main.php?id=0");
Естественно, после такого меняется и строка адреса броузера на http://blabla.ru/main.php?id=0.
Собственно вопрос. Можно ли так сделать, чтобы в строке адреса броузера после редиректа осталось http://www.blabla.ru/index/main.html ???
Буду очень благодарен за совет!
-
if ($REQUEST_URI=="/index/main.html"){
HEADER("Status: 200 Ok");
$id="0";
include_once("main.php");
}
-
правда я не понял при чем тут поисковики
-
saska:
if ($REQUEST_URI=="/index/main.html") HEADER("Location: http://blabla.ru/main.php?id=0");
эту строчку в п#$%у
а в .htaccess
RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteRule ^index/([1-9][0-9]*)/main.html$ /main.php?id=$1 [QSA,L]
-
у меня в htaccess:
RewriteEngine On
RewriteBase /
RewriteRule ^index/(.*)$ /index.php/$1
ForceType application/x-httpd-php
Чем на мой взгляд хорош вариант с index.php, так это то, что в нем можно организовать практически любую обработку параметра после /index/.. Например выделение подстроки в строке и т.д. А ведь с htacces (твой вариант rewrite rule) такого не получится, или я не прав? Но щас буду пробовать. Спасибо за совет!
-
saska:
ForceType application/x-httpd-php
А это зачем? Почитай вот эту статью про мод реврайт - http://sitemaker.ru/technologies/webserver/mod_rewrite/
-
Tronyx:
А это зачем? Почитай вот эту статью про мод реврайт - http://sitemaker.ru/technologies/webserver/mod_rewrite/
Прочел.. Правда не понял к чему это ты. Вроде там совершенно другие вещи. А отцитированый тобой код означает, что для парсинга файла index.php будет запускаться php
-
ИМХО проще так:
RewriteEngine on
Options +FollowSymlinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /pages_handler.php?$1
Если это не файл, и не папка то попадаем на pages_handler.php, а в скрипте разбираем, наш это клиент или 404.
-
ну в принципе у меня почти так и было. Только парсингом запросов занимался index.php и в зависимости от на нужную страницу перекидывал с помощью Header (Locate ..)