Table of Contents
Настройка базовой страницы
Наверняка первым делом после того, как вы установите и наладите Greenstone, вы захотите настроить базовую страницу Greenstone. Файл, который отвечает за эту страницу называется home.dm и находится в поддиректории macros в директории, куда был установлен Greenstone (При установке по умолчанию это C:\Program Files\gsdl). Этот файл является пустым текстовым файлом, который вы можете отредактировать для создания новой базовой страницы. Мы рекомендуем создать новый файл, например, yourhome.dm вместо изменения home.dm. Он будет похож на home.dm, но будет использовать "package home". Эта часть, которая отвечает за всю работу немного по-другому.
При создании отдельной базовой страницы нужно соединить её с цифровой библиотекой. Решение, которое предлагает Greenstone, сотоит в использовании "макросов"(макроэлементы, макрокоманды).Поэтому начальная базовая страница имеет расширение ".dm", а не ".html". Файл macro больше нежели простой HTML. Но не беспокойтесь: макро-файл содержит простой HTML и несколько дополнений, описанных ниже. Макроязык является мощным средством, и только малая его часть описана ниже - смотрите Руководство разработчика для большей информации.
Пример
<imgcaption figure_your_own_greenstone_home_page|%!– id:264 –%Рисунок 3 Ваша собственная домашняя страница ></imgcaption>
На рисунке <imgref figure_your_own_greenstone_home_page> показан пример созданной базовой страницы библиотеки. Каждая из ссылок "click here" (нажмите) приведет вас к соответствующим средствам Greenstone. Эта страница была создана файлом yourhome.dm, показанным на Рисунке <imgref figure_yourhome_dm>.
<imgcaption figure_yourhome_dm|%!– id:266 –%yourhome.dm, использованный для создания Рисунка your_own_greenstone_home_page ></imgcaption>
package home _content_ { <h2>Your own Greenstone home page</h2> <ul> <table> <tr valign=top><td>Search page for the demo collection<br></td> <td><a href="_httpquery_&c=demo">Click here</a></td></tr> <tr><td>"About" page for the demo collection</td> <td><a href="_httppageabout_&c=demo">Click here</a></td></tr> <tr><td>Preferences page for the demo collection</td> <td><a href="_httppagepref_&c=demo">Click here</a></td></tr> <tr><td>Home page</td> <td><a href="_httppagehome_">Click here</a></td></tr> <tr><td>Help page</td> <td><a href="_httppagehelp_">Click here</a></td></tr> <tr><td>Administration page</td> <td><a href="_httppagestatus_">Click here</a></td></tr> <tr><td>The Collector</td> <td><a href="_httppagecollector_">Click here</a></td></tr> </table> </ul> } # if you hate the squirly green bar down the left-hand side of the # page, uncomment these lines: # _header_ { # }
Вы можете использовать Рисунок <imgref figure_yourhome_dm> как основу для создания ваших базовых страниц в Greenstone. В этом файле все сводится к тому, чтобы определить макрос, называемый content (содержимое). Вы можете добавить текст, также любые форматные команды HTML, для помещения всего необходимого вам на эту страницу Текс т, который вы вводите, это простой HTML; если вы желаете, можно добавить гиперссылки и использовать другие возможности, предоставляемые HTML.
Для соединения вашей новой базовой страницы с другими страницами библиотеки вам необходимо использовать определенное "указание". В языке макрос ими являются те слова, которые с двух сторон обозначены специальными знаками .Вы можете их увидеть на Рисунке <imgref figure_yourhome_dm>. Например, _httppagehome_ возвращает на базовую страницу, httppagehelp_ приводит к странице Справки и т.д. В некоторых случаях вам нужно будет указать название коллекции. Например, httpquery_&c=demo настраивает страницу поиска на Демо-коллекцию; для других коллекций вы должны будете заменить demo на соответствующее название коллекции.
Макроопределение, называемое _content_, является простым HTML Любой стандартный код HTML может быть заменен макроопределениями. Однако, такие символы, как '{', '}', 'V, и '_' нужно выделять с помощью backslash, чтобы избежать их перереработки макро языковой интерпретатор.
Заметьте, что макроопределение _content_ не содержит никаких заголовков и footer. Если вы желаете изменить заголовки или footer вашей базовой страницы, необходимо обозначить макросы header_ и/или Jooter_, добавив их в файл yourhome.dm в виде:
_macroname_ { ... }
Например, протяженный зеленый рисунок, находящийся в левой части страницы, обозначен в макросе _header_, и при удалении содержимого этого макроса рисунок <imgref figure_yourhome_dm> уберется.
Что нужно сделать, чтобы всё заработало
Для того чтобы ваш файл yourhome.dm начал работать, вы должны указать его в главном конфигурационном файле main.cfg, так как программа считывет макрофайлы, указанные в нем.
Таким образом, чтобы программа начала использовать базовую страницу, созданную вами вместо начальной, вы должны поместить yourhome.dm в директорию macros на Рисунке <imgref figure_yourhome_dm>. Затем в конфигурационном файле main.cfg замените home.dm на yourhome.dm в списке макрос файлов, которые должны загружаться при запуске программы.
Переадресация URL к Greenstone
Для адресов к программе cgi вы можете создать более удобную переадресовку(более короткая и сжатая форма). Например, адрес URL http://nzdl.org (сокращеная форма http://nzdl.org/index.html) переадресовывается на адрес http://nzdl.org/cgi-bin/library. Сетевой сервер Apache выполняет это с помощью директивы Redirect. Как и другие директивы, она находится в C:\Program Files\Apache Group\Apache\conf\httpd.conf. Для переадресации URL http://www.yourserver.com На http:// www.yourserver.com/cgi-bin/library введите это в конфигурационный файл httpd.conf:
Redirect /index.html http://www.yourserver.com/cgi-bin/library
Таким образом вы получите прямой доступ к библиотеке через адрес http://www.yourserver.com. Если вы хотите, чтобы адрес http://www.yourserver.com/greenstone приводил вас к http://www.yourserver.com/cgi-bin/library введите в конфигурационном файле:
Redirect /greenstone http://www.yourserver.com/cgi-bin/library
Если у вашего сервера нет доменного имени (как www.yourserver.com выше), просто замените название www.yourserver.com на localhost в строках, указанных выше. Это приведет к такому же результату.
Вместо того, чтобы помещать директивы переадресации в файл http.conf, вы также можете поместить их в файл .htaccess, находящийся в корневой директории вашего сервера. При внесении изменений в файл .htaccess они вступят в силу немедленно, тогда как для начала работы с измененным файлом httpd.conf нужно перезапустить Apache. Во- вторых, часто в системе Unix вам нужно быть "корневым" пользователем для изменения httpd.conf, в то время как любые пользователи могут изменить .htaccess.