[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Rewrite
olgatcpip
Здравствуйте.

Хочу, чтобы пользователь ввёл строку такую http://site_name.ru/xxx или вместо xxx любое слово без расширения, а переброс бы шёл на constructor.php в корне сайта.

При этом чтоб картинки открывались и стили подгружались.
Делаю так
Код
# Запуск mod_rewrite
Options +FollowSymLinks
RewriteEngine on
RewriteBase   /site_name

#RewriteRule   ^1\.html$  2.php
#RewriteRule   ^style\.css$ style.css  
#RewriteRule   ^.+$  constructor.php

#RewriteRule   ^(.+)\.css $1.css

#RewriteCond /images/%{REQUEST_FILENAME} -f
#RewriteRule (.+) /images/$1 [L]

RewriteRule   (.+) constructor.php

И у меня перебрасывает на конструктор, но ни картинки не открываются, ни стили не подгружаются.

Привожу и закоментированные строки. Хоть одну раскоментирую ничего не меняется.

В общем не пойму как с ревритом работам.
Помогите кто чем может smile.gif



Спустя 14 минут, 25 секунд (27.09.2009 - 20:38) kirik написал(а):
Попробуй такое:

Код
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([a-zA-Z0-9_-]+)$ /constructor.php [L]

Спустя 12 минут, 54 секунды (27.09.2009 - 20:51) olgatcpip написал(а):
Супер, помогло. Спасибо.

Только вот если ввести так http://site_name.ru/, то не откроется конструктор.
Попробовала вместо + поставить * не помогло. в чём дело?

Спустя 4 минуты, 21 секунда (27.09.2009 - 20:56) kirik написал(а):
olgatcpip
не понял.. ты хочешь чтобы и на корень открывался конструктор?
Если у тебя в корне лежит index, то правило RewriteCond %{REQUEST_FILENAME} !-f не срабатывает, и реврайт не происходит..

Спустя 3 минуты, 24 секунды (27.09.2009 - 20:59) olgatcpip написал(а):
Вру работает! Я просто не сохранила скрипт после изменения. (* подставила вместо +)
Да, мне нужно, чтобы конструктор открывался, я внем разберу строку url и сама определю что дальше открывать.

Спасибочки, мне так как сейчас нужно biggrin.gif

Спустя 2 дня, 17 часов, 1 минута, 56 секунд (30.09.2009 - 14:01) olgatcpip написал(а):
Помогите, пожалуйста, неумейке ещё.

Мне вот нужно, чтобы практически не зависимо от того что введено в url всё равно перебрасывало на /constructor.php
например http://site_name/asd/123...

такое возможно задать?

я вот так тольк придумала
PHP
RewriteCond /asd/%{REQUEST_FILENAME} !-f
RewriteRule 
^([a-zA-Z0-9_-]*)$ /constructor.php [L]

Спустя 44 минуты, 33 секунды (30.09.2009 - 14:46) olgatcpip написал(а):
То что мне нужно нашла тут
сделала так
Код
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ constructor.php [L,QSA]


на этом сайте ссылку порекомендовали в каком-то из топиков

Спустя 6 часов, 6 минут, 9 секунд (30.09.2009 - 20:52) kirik написал(а):
Цитата (olgatcpip @ 30.09.2009 - 06:46)
сделала так

Как-то так.. Только RewriteCond %{REQUEST_FILENAME} !-d можешь убрать (если ссылки до реальных папок нужно тоже перезаписывать) и RewriteCond %{REQUEST_FILENAME} !-f если ссылки до реальных файлов тебе тоже нужно реврайтить.

Спустя 8 часов, 54 минуты, 15 секунд (1.10.2009 - 05:46) olgatcpip написал(а):
Я не могу найти что означает L,QSA

Спустя 37 минут, 2 секунды (1.10.2009 - 06:23) kirik написал(а):
olgatcpip
Смотри тут

Спустя 47 минут, 48 секунд (1.10.2009 - 07:11) olgatcpip написал(а):
понятно.


_____________
Ласковое слово и кошке приятно... Плюсик в карму сойдет wink.gif
*smarty дока - новая любовь
Моё рукотворение ругайте, хвалите smile.gif
Веду маленький блог
в этом блоге публикую новые работы
WMR217126627282 wink.gif

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.