Нужно сделать сайт-визитку, которая состоит только из статических страниц.
Сайт будет написан на 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", которая находится в корне сайта?
Спасибо.
_____________