Подскажите, как делают так, чтобы в урл строке не было никаких index.php или .html

12
Rock'n'rolla
На сайте с 14.09.2009
Offline
146
941

Сабж.

подскажи как это делается?

http://www.100creditov.ru/banks/msk/citibank/

т.е. нет никаких index.htm и прочего нигде

Может есть сборник уже готовых примеров по htaccess?

"Vulcan-Bit - лучшая партнерка в сети" (http://vulcan-bit.com?invite=artem_kozirev) KMA.BIZ - Партнерка с крутым конвертом и отчислениями в долларах. Лить! (http://kma.biz)
gormarket
На сайте с 29.12.2010
Offline
47
#1

если у Вас нет такого пути banks/msk/citibank/ то в htaccess должно быть что-то типа

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

а уже index.php (или другой заданный в RewriteRule скрипт) анализирует пременную q (имеющую в данном случае значение "banks/msk/citibank/") и отдает соответствующий контент по данному запросу.

Товары и цены в магазинах Вашего города: Городской рынок (http://gormarket.ru/)
Rock'n'rolla
На сайте с 14.09.2009
Offline
146
#2

gormarket, не понял ничего =(

Ragnarok
На сайте с 25.06.2010
Offline
226
#3
Rock'n'rolla:
gormarket, не понял ничего =(

в этом варианте запросы к любому адресу сайта передаются на index.php, а в нём уже скрипт в зависимости от адреса выдаёт нужную страницу.

этот код должен быть в .htaccess

как вариант, в том же .htaccess добавить

RewriteEngine on

RewriteRule ^banks/msk/citibank$ bank.php [L]

RewriteRule ^banks/msk/citibank/$ bank.php [L]

тогда по адресу banks/msk/citibank/ (со слэшем в конце или без) будет вызываться файл bank.php

//TODO: перестать откладывать на потом
Rock'n'rolla
На сайте с 14.09.2009
Offline
146
#4

Ragnarok, Сейчас попробую. А можно как нибудь запретить к индексации ПС целую папку или группу файлов?

siv1987
На сайте с 02.04.2009
Offline
427
#5
А можно как нибудь запретить к индексации ПС целую папку или группу файлов?

User-agent: *

Disallow: /целая_папка/

Rock'n'rolla
На сайте с 14.09.2009
Offline
146
#6

Ragnarok, Спс, а как яндекс к этому относиться? Он будет как php или как html воспринимать страницы?

---------- Добавлено в 17:38 ---------- Предыдущее сообщение было в 16:48 ----------

Сделал как Вы советовали.

http://www.infokredit.ru/privacy - все работает отлично

http://www.infokredit.ru/privacy/ - нет картинок и css

=(

gormarket
На сайте с 29.12.2010
Offline
47
#7

добавьте слеш в href для css

<link rel="stylesheet" href="/css/style.css" type="text/css" media="screen, projection">

иначе браузер пытается загрузить стили с адреса www.infokredit.ru/privacy/css/style.css

с картинками может аналогично (если задан относительный адрес)

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

Rock'n'rolla
На сайте с 14.09.2009
Offline
146
#8

gormarket,

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

Полностью согласен, как мне остановиться на одном варианте (хочу без слеша) и как собственно реализовать редирект?

gormarket
На сайте с 29.12.2010
Offline
47
#9

ну наверно проверка если не файл и если не папка то при адресе заканчивающемся не на слеш делать редирект на то-же со слешем

примерно так

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.+)/$ /$1 [L,R=301]

может еще какие-то исключения надо сделать, это зависит от сайта и движка (не имени движка, а как под него сделан htaccess)

Rock'n'rolla
На сайте с 14.09.2009
Offline
146
#10

gormarket, почему то не работает.. мне надо чтобы

с

http://www.infokredit.ru/privacy/

перекидывал на

http://www.infokredit.ru/privacy

Прописал это

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [L,R=301]

в файл .htaccess

ничего не изменилось(((

12

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