#apache #coldfusion #content-management-system #dynamic-data #coldfusion-9
#apache #coldfusion #система управления контентом #динамические данные #coldfusion-9
Вопрос:
Итак, я делал это раньше несколькими различными способами, но я хотел узнать мнение сообщества.
Что необходимо выполнить, так это, по сути, динамические URL-адреса, которые извлекают содержимое в зависимости от того, что существует в URL. Пример:
Этот URL-адрес будет извлекать содержимое пользователя и заполнять веб-сайт. Идея заключается в том, чтобы у нескольких пользователей было свое собственное место на веб-сайте. Это один и тот же веб-сайт для всех, но информация о пользователе изменяется в соответствии с запросом URL.
Делая еще один шаг вперед, чтобы иметь возможность вызывать example.com/userA/mediaID и отображать видео от пользователя.
Как я уже сказал, я делал это раньше, но я хочу сделать это с учетом лучших практик … возможно, сочетание htaccess и CGI?
Мысли?
Комментарии:
1. Откуда берется контент? Вы передаете его по сети с других серверов или просто из других папок на том же веб-сервере?
2. В конце концов, я хотел бы иметь возможность использовать облачный сервер для этого… но сначала тот же сервер.
Ответ №1:
Используйте модуль перезаписи Apache для отправки запроса через внешний контроллер. Итак, в вашем httpd.conf должна быть запись, которая выглядит примерно так:
# QSA preserves original query string
# PT Sends the new URI to ColdFusion
# NS (No [internal] Subrequests) is necessary because expandPath() will not work otherwise
RewriteRule ^/(.*) /frontcontroller.cfm [E=ORIGINAL_URI:%{REQUEST_URI},QSA,PT,NS]
Это делает CGI.ORIGINAL_URI
доступным код ColdFusion, позволяющий динамически генерировать ответ и защищать его относительно сеанса пользователя.
Ответ №2:
Для любых разработчиков CF, которые знакомы с маршрутизацией для Rails или .NET MVC, ознакомьтесь: http://cfwheels.org
Wheels — это система маршрутизации CFML с открытым исходным кодом! Может стать победителем!
Ответ №3:
Другие языки / фреймворки делают это динамически, используя файл ‘routes’, который использует сопоставления приложений, а не .htaccess
(см. Маршрутизацию Rails).
Возможно, вы могли бы каким-то образом реплицировать это в CF — но я не пробовал — обычно перезапись URL-адресов в большинстве случаев работает нормально.
Надеюсь, это поможет.
Комментарии:
1. Да, .NET MVC обладает замечательной системой маршрутизации… Я создал свой собственный, но должно быть что-то еще «полуофициальное».