[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Можно-ли это сделать при помощи mod_rewrite?
Rapp_colince
Всем привет!
Нужно сделать сайт-визитку, которая состоит только из статических страниц.
Сайт будет написан на PHP + MySQL. Т.е., разумнее всего сделать один скрипт, который отображает все страницы. Например, адрес страницы будет иметь вид: site.ru/index.php?page=123.

Заказчику нужно сделать так, чтобы страницы имели вид: site.ru/articles/20/03/2009/example.html. или site.ru/catalog/05.html

1. Нужно, чтобы в адресую строку подставлялось такое значение, которое заказчик введет в админке.
2. Нужно, чтобы при наведении на ссылку, в строке состояния отображался этот же адрес (из пункта 1).
3. Можно-ли достичь этого методами mod_rewrite? Там же нужно брать информацию (подставляемый адрес) из базы данных?

Заранее спасибо!



Спустя 10 минут, 24 секунды (29.06.2009 - 11:34) waldicom написал(а):
Что-то все как-то скомкано вместе.
Цитата
сайт-визитку, которая состоит только из статических страниц.

и
Цитата
адрес страницы будет иметь вид: site.ru/index.php?page=123.

это вроде как разные вещи.

Для каждой категории (страницы) ввести поле "url", в котором записывать введеное в админке значение.
При генерировании страницы подставлять правильные урлы.
Настроить правильно Rewrite-Rules

Спустя 10 минут, 7 секунд (29.06.2009 - 11:45) Rapp_colince написал(а):
Цитата (waldicom @ 29.06.2009 - 12:34)
Что-то все как-то скомкано вместе.
это вроде как разные вещи.

Ну как? Есть сайт только со статическими страницами. Отображаются они одним скриптом: index.php. Если есть переменная GET['page'], то отображается страница с соответствующим ID, если этой переменнной нет, то отображается главная страница.
Цитата (waldicom @ 29.06.2009 - 12:34)
При генерировании страницы подставлять правильные урлы.

А как подставлять правильные урлы? Я так понимаю, что это компетенция Apache, который не может обращаться к Базе данных. А урлы хранятся в базе данных.

Спустя 2 минуты, 37 секунд (29.06.2009 - 11:47) waldicom написал(а):
Цитата
Ну как? Есть сайт только со статическими страницами. Отображаются они одним скриптом: index.php. Если есть переменная GET['page'], то отображается страница с соответствующим ID, если этой переменнной нет, то отображается главная страница.

Для самого вопроса это не столь важно, но раз уж затронули тему:
статические страницы - они сделаны один раз, имеют всегда один и тот же адрес и никогда не меняются.
Динамические страницы - их наполнение зависит от того, какие параметры получила страница на входе.

Спустя 57 секунд (29.06.2009 - 11:48) waldicom написал(а):
Цитата
А как подставлять правильные урлы? Я так понимаю, что это компетенция Apache, который не может обращаться к Базе данных. А урлы хранятся в базе данных.

Например при вытаскивании страницы из базы и формировании ссылки подсатвлять ту ссылку, которая есть в базе (которую записал админ в админке)

Спустя 8 минут, 51 секунда (29.06.2009 - 11:57) Rapp_colince написал(а):
Цитата (waldicom @ 29.06.2009 - 12:48)
Например при вытаскивании страницы из базы и формировании ссылки подсатвлять ту ссылку, которая есть в базе (которую записал админ в админке)

Да, после нажатия на такую ссылку, будет обращение к сайту, в папку, которой не существует. Если настроить Apache так, чтобы при таких обращениях, он все-равно загружал скрипт index.php. Далее, адрес, который введен в посетителем сохраняется в $_SERVER['SCRIPT_NAME'] (это так?), и мы подгружаем соответствующий контент. Это правильно?
Если да, то два вопроса:
1. Как сделать, чтобы при любом обращении к сайту, запускался скрипт index.php Но в адресной строке оставался введенный посетителем адрес?

Спустя 25 минут, 10 секунд (29.06.2009 - 12:22) glock18 написал(а):
mod_rewrite и RewriteRules в помощь

Спустя 1 час, 4 минуты, 47 секунд (29.06.2009 - 13:27) Rapp_colince написал(а):
Ок, спасибо большое!

Спустя 5 месяцев, 29 дней, 8 часов, 59 минут, 47 секунд (28.12.2009 - 23:27) Rapp_colince написал(а):
Цитата (Rapp_colince @ 29.06.2009 - 14:27)
Ок, спасибо большое!

И еще вопрос:
В корне сайт сделал .htaccess следующего содержания:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L,QSA]</span>


У меня есть страница, доступная по адресу http://site.ru/photo/
Это страница с фотографиями, которые открываются через Lightbox.
В Лайтбоксе есть картинки-иконки, которые он пытается подгрузить по адресу: http://site.ru/photo/images/lightbox_..._.jpg
Но понятно, что папки "photo/" у меня не существует.
Как настроить модуль, чтобы при обращении к файлам, которые начинаются на "lightbox", он искал их в папке "images", которая находится в корне сайта?

Спасибо.


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

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