Не каноническое отображение url каталога
Бывают такие случаи, когда требуется, чтобы не было слеша в конце url (хотя это не есть правильно), для этого необходимо сделать редирект такого плана site.info/url/ ⇒ site.info/url Все просто:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ /$1 [R=301,L]
Перезапись URL по шаблону
Перезапись может быть простой, как здесь:
view sourceprint?
1.RewriteEngine on
2.RewriteRule ^old\.html$ new.html
В этом примере мы всего лишь делаем простую переадресацию от одного файла к другому, что тоже выполняется прямиком, без изменений, отображаемых в адресной строке. Первая команда, RewriteEngine on, просто гарантирует, что механизм перезаписи включён.
Для обновления того, что отображено в адресной строке браузера посетителя, можно использовать метку R в конце RewriteRule, например:
view sourceprint?
1.RewriteRule ^old\.html$ http://hostname/new.html [r=301]
Метка r вызывает внешнее перенаправление, вот почему тут приведен полный URL (пример URL здесь) новой страницы. Также при использовании метки можно определить код состояния. Таким образом обновляется адресная строка браузера пользователя.
Одним из возможных использований перезаписи URL, упомянутых мной в начале этого раздела – это сделать некрасивые URL’ы (содержащие информацию строкового запроса) более дружественными для посетителей и поисковых движков. Давайте рассмотрим это в действии:view sourceprint?
1.RewriteRule ^products/([^/]+)/([^/]+)/([^/]+) product.php?cat=$1&brand=$2&prod=$3
Это правило позволит посетителям использовать такой URL, как products/turntables/technics/sl1210, и преобразовать его в product.php?cat=turntables&brand=technics&prod=sl1210. Круглые скобки между косыми чертами в вышеприведенном регулярном выражении – это собирающие группы – мы можем применять любую из них, как $1, $2 и $3 соответственно. Символьный класс [^/]+ в круглых скобках означает совпадение любого символа один или более раз, кроме косой черты
На практике перезапись URL может оказаться (и обычно так и есть) намного сложнее и добиться с её помощью можно гораздо большего.
Регистрация
При использовании старых версий InterBase (до 5.5 включительно), для администрации сервера использовалась утилита InterBase Windows ISQL. Мы не будем рассматривать работу с устаревшим ПО, ведь в новых версиях InterBase (начиная с 6.0) используется утилита IBConsole, и маловероятно, что кто то еще использует старые версии. IBConsole - это графическая оконная утилита, с помощью которой можно выполнять множество операций: регистрировать и конфигурировать серверы, создавать и администрировать базы данных, добавлять и удалять зарегистрированных пользователей, имеющих доступ к базам данных, а также запускать запросы SQL в интерактивном режиме. Существует множество утилит для работы с сервером InterBase, выполненных сторонними разработчиками, которые более удобны для работы с базами данных, например InterBase Expert, IBManager, IBAdmin. Но IBConsole - "родная" утилита InterBase, ее не нужно искать и устанавливать специально, поэтому мы будем использовать именно ее. IBConsole устанавливается вместе с сервером и запускается из папки InterBase (Пуск -> Программы -> InterBase).
При первом запуске окно IBConsole выглядит так:
Рис. 14.6. Утилита IBConsole
Дерево серверов в левой части окна содержит только корневую ветвь "InterBase Servers" (Серверы InterBase), но не содержит пока ни одного сервера. Для начала работы требуется зарегистрировать хотя бы один сервер (служба InterBase должна быть запущена). Выберите команду меню Server -> Register или нажмите в панели инструментов первую кнопку "Register a new InterBase Server". Появится окно регистрации нового сервера:
Рис. 14.7. Окно регистрации нового сервера
В верхней части окна необходимо выбрать расположение сервера: Local (локальный, установленный на этой же машине) или Remote (удаленный, расположенный на другом ПК в сети). В случае использования локального сервера все просто: достаточно будет указать только User Name (имя пользователя) и Password (пароль). При выборе удаленного сервера придется также указать имя компьютера, на котором находится сервер и используемый сетевой протокол. Данный курс не ставит целью изучение сетевой архитектуры, однако необходимо коротко прояснить некоторые вопросы. Прежде всего, в сетях обычно используют протокол TCP/IP (Transmission Control Protocol / Internet Protocol - Протокол контроля передачи данных / Интернет протокол). Каждый компьютер в сети имеет собственный уникальный IP-адрес, состоящий из четырех цифр от 0 до 255, разделенных точками, например:
120.0.0.5
В строке Server Name можно указать имя компьютера в сети либо его сетевой адрес. Вы должны быть уверены, что удаленный компьютер, который вы регистрируете, работает, подключен к сети и на нем имеется запущенный сервер InterBase. Помимо этого, при регистрации удаленного сервера, потребуется указать Alias Name - псевдоним, под которым будет зарегистрирован удаленный сервер в дереве серверов на IBConsole (при регистрации локального сервера этого делать не нужно).
Однако в качестве удаленного сервера можно указать и локальный, расположенный на этом же ПК. Дело в том, что во всех операционных системах принято, чтобы IP-адрес
127.0.0.1
был зарезервирован для служебных нужд и указывал на локальный компьютер. Другими словами, если вы обращаетесь на адрес 127.0.0.1, то обращаетесь сами к себе. А зарезервированное имя, по которому ПК может обращаться к самому себе, как к сетевому компьютеруlocalhost
В Windows эти данные прописаны в файле hosts, который содержит сопоставления IP-адресов именам узлов. Если у вас Windows XP, то этот файл находится по адресу
C:\WINDOWS\system32\drivers\etc
Вы также самостоятельно можете найти этот файл, с помощью команды меню Пуск -> Найти. Сейчас мы рассмотрим регистрацию локального сервера. Для этого в верхней части окна оставим выделенным Local Server, а в строках User Name и Password напишем:
SYSDBA masterkey
"SYSDBA" - это имя администратора БД по умолчанию, регистр символов здесь не имеет значения. А "masterkey" - пароль администратора, здесь регистр букв имеет значение: пароль нужно вводить маленькими буквами. Вообще-то, хотя пароль может содержать до 32 символов, значимыми являются только первые 8, так что можно ввести просто "masterke". Для реального сервера рекомендуется изменить пароль администратора сразу после установки InterBase (в примерах последующих лекций пароль "masterkey" не меняется). В любом случае, чтобы зарегистрировать нового пользователя, нужно будет войти в систему под именем SYSDBA. Как только вы нажмете кнопку OK, то зарегистрируете локальный сервер. В дереве серверов IBConsole появится вложенная ветвь Local Server:
Рис. 14.8. Зарегистрированный локальный сервер
При выборе команды "Logout" во всплывающем меню, или двойном щелчке по разделу "Logout" в колонке "Action" правого окна, вы завершаете текущий сеанс работы. Ветвь "Local Server" закроется, но сам сервер будет продолжать свою работу:
Рис. 14.9. Сеанс подключения к серверу завершен.
Чтобы вновь подключиться к серверу, следует выбрать команду "Login" (можно просто дважды щелкнуть по "Local Server"), вписать имя пользователя и пароль, нажать кнопку "Login":
Рис. 14.10. Подключение к серверу.
Подключаться к серверу придется и при каждой загрузке утилиты IBConsole.
Следует отметить один момент: локальный сервер может быть только один! Другими словами, если вы попытаетесь зарегистрировать еще один сервер, то пункт "Local Server" будет уже недоступен:
Рис. 14.11. Недоступность локального сервера (локальный сервер уже зарегистрирован)
Если вам нужно зарегистрировать локальный сервер заново, то предыдущую регистрацию следует вначале удалить. Для этого нужно щелкнуть правой кнопкой по строке "Local Server" (рис. 14.7) и отключить его командой "Logout", а затем удалить регистрацию командой "Un-Register". После этих действий вы вновь получите возможность зарегистрировать новый локальный сервер.
Удаленных же серверов может быть множество.
Наследование
Поскольку подчиненные Сервера входят в состав групп на них распространяются все групповые задачи и политики. Точнее, они распространяются на клиентские компьютеры подчиненных Серверов. Такое распространение называется наследованием.
Политики главного Сервера всегда наследуются подчиненным. Если на подчиненном Сервере нет своей политики, применяется унаследованная политика. Если собственная политика есть, она контролируется унаследованной политикой в части обязательных параметров.
Групповые задачи главного Сервера наследуются опционально, причем по умолчанию не наследуются. Администратор главного Сервера сам определяет, какие задачи должны наследоваться, а какие нет. Унаследованные задачи выполняются на всех клиентских компьютерах подчиненного Сервера. Глобальные задачи не наследуются.
Администратор подчиненного Сервера не может менять настройки унаследованных задач и политик.
Назначение
Если вы работали, например, с Windows 95, то вы знаете, что, хотя пользователь имеет полную свободу в организации структуры каталогов, некоторые "обычаи" все же сохраняются. Так системные файлы располагаются обычно в подкаталоге C:\Windows, вновь устанавливаемые программы по умолчанию размещаются в каталоге C:\Program Files и т. д.. В Linux типовая структура каталогов выдерживается, пожалуй, даже более строго. Более того, существует даже стандарт на структуру каталогов для UNIX-подобных ОС, так называемый Filesystem Hierarchy Standart (FHS), полный текст которого можно найти по адресу http://www.pathname.com/fhs/(Примеч.10). Дистрибутив Red Hat в основном придерживается стандарта FHS.
В табл. 4.1 дан краткий перечень основных стандартно создаваемых каталогов той файловой структуры, которая создается при установке дистрибутива Red Hat (и его последователей).
В левом столбце перечислены подкаталоги корневого каталога, во втором столбце — некоторые основные (далеко не все!) подкаталоги второго уровня, а в третьем столбце даны краткие пояснения о назначении всех этих каталогов. Пояснения по необходимости очень краткие, более подробно с основными каталогами вы можете познакомиться по тексту стандарта FHS (http://www.pathname.com/fhs/).
Таблица 4.1. Структура каталогов Red Hat Linux
Каталог | Подкаталоги | Назначение |
/bin | Этот каталог содержит в основном готовые к исполнению программы, большинство из которых необходимы во время старта системы (или в однопользовательском системном режиме, используемом для отладки). Здесь хранится значительное количество общеупотребительных команд Linux | |
/boot | Содержит основные постоянные файлы для загрузки системы, в частности загружаемое ядро. Файлы из этого каталога нужны только во время загрузки системы | |
/dev | Каталог специальных файлов или файлов устройств. О них мы поговорим чуть подробнее в одном из следующих подразделов. Можете также заглянуть в man mknod(1) | |
/etc | Этот каталог и его подкаталоги содержат большинство данных, необходимых для начальной загрузки системы и основные конфигурационные файлы. В /etc находятся, например, файл inittab, определяющий загружаемую конфигурацию, и файл паролей пользователей passwd. Часть конфигурационных файлов может находится и в /usr/etc. Каталог /etc не должен содержать двоичных файлов (их следует перенести в /bin или /sbin). Ниже приводится назначение основных (но далеко не всех!) подкаталогов каталога /etc | |
/etc/rc.d | Этот подкаталог содержит файлы, которые используются в процессе начальной загрузки системы. Подробнее о них и вообще о процессе загрузки будет рассказано в разд. 8.2 | |
/etc/skel | Когда создается новый пользователь и account для него, то файлы из этого каталога копируются во вновь созданный домашний каталог пользователя | |
/etc/sysconfig | Каталог, содержащий некоторые (но не все) конфигурационные файлы системы | |
/etc/X11 | Каталог для конфигурационных файлов подсистемы X11 (например, XF86Config) | |
/home | Обычно в этом каталоге находятся домашние каталоги пользователей | |
/lib | Этот каталог содержит разделяемые библиотеки функций, необходимых компилятору языка C и модули (драйверы устройств). Даже если в системе не установлен компилятор языка C, разделяемые библиотеки необходимы, поскольку они используются многими прикладными программами. Они загружаются в память по мере необходимости выполнения каких-то функций, что позволяет уменьшить объем кода программ — в противном случае один и тот же код многократно повторялся бы в различных программах | |
/lost+found | Этот каталог используется при восстановлении файловой системы командой fsck. Если fsck обнаруживает файл, родительский каталог которого определить невозможно, она помещает такой файл в каталог /lost+found. Поскольку родительский каталог потерян, то таким файлам присваиваются имена, совпадающие с номерами их индексных дескрипторов | |
/mnt | Это точка монтирования для временно монтируемых файловых систем. Если на компьютере запускается поочередно Linux и MS DOS, то этот каталог обычно используется, чтобы монтировать файловую систему MS DOS. Если вы имеете привычку монтировать несколько дополнительных носителей, например, дискеты, CD-ROM, дополнительный жесткий диск и т. д., то можно создать в нем соответственно дополнительные подкаталоги для каждого носителя | |
/proc | Это точка монтирования для файловой системы proc, которая обеспечивает информацию о выполняющихся процессах, ядре, оборудовании вычислительной установки и т. д. Это псевдо-файловая система, подробности о которой можно узнать по команде man 5 proc. Специальные файлы из этого каталога используются для получения и передачи данных ядру | |
/root | Это домашний каталог суперпользователя. Обратите внимание на то, что он расположен не там, где располагаются личные каталоги остальных пользователей (в /home) | |
/sbin | Подобно каталогу /bin содержит в основном исполняемые файлы — программы и утилиты ОС, используемые в процессе загрузки и запускаемые системным администратором. В стандарте FHS говорится, что в этот каталог надо помещать те исполняемые файлы, которые используются после успешного подключения файловой системы /usr. Минимальное содержимое этого каталога включает программы clock, getty, init, update, mkswap, swapon, swapoff, halt, reboot, shutdown, fdisk, fsck.*, mkfs.*, lilo, arp, ifconfig, route | |
/tmp | Каталог для временных файлов. В любой момент суперпользователь может удалить файлы из этого каталога без большого ущерба для остальных пользователей. Однако, не стоит удалять файлы из этого каталога, если вам не стало ясно, что конкретный файл или группа файлов мешают продолжению продуктивной работе на машине. Система сама периодически очищает этот каталог, поэтому не следует хранить тут файлы, которые вам могут понадобиться в дальнейшем | |
/usr | Этот каталог огромен и его структура в основном повторяет структуру корневого каталога. В его подкаталогах находятся все основные приложения. В соответствии со стандартом FHS рекомендуется выделять для этого каталога отдельный раздел диска или вообще располагать его на сетевом диске, общем для всех компьютеров в сети. Такой раздел или диск монтируют только для чтения и располагают в нем общие конфигурационные и исполняемые файлы, документацию, системные утилиты и библиотеки, а также включаемые файлы (файлы типа include) | |
/usr/bin | Готовые к исполнению программы — утилиты и приложения, которые часто вызывают обычные пользователи. /usr/bin/X11 — Обычное место для расположения готовых к исполнению программ из X-Window в Linux. Часто это символическая ссылка на /usr/X11R6/bin | |
/usr/dict | Этот каталог содержит файлы со словарным запасом для программ проверки корректности написания слов. | |
/usr/etc | Здесь содержатся конфигурационные файлы для группы машин. Однако, команды и программы должны смотреть в каталог /etc, в котором должны быть линки к файлам в каталоге /usr/etc | |
/usr/include | Этот каталог содержит исходный код стандартных библиотек языка C, подставляемый в программы директивой препроцессора include. Поэтому пользователю надо иметь, по крайней мере, право на чтение из этого каталога. Ни в коем случае не следует модифицировать файлы в этом каталоге, потому что они тщательно отлажены разработчиком системы (разве что вы знаете систему лучше разработчика) | |
/usr/lib | В данном каталоге содержится объектные библиотеки подпрограмм, динамические библиотеки, некоторые готовые к исполнению программы, которые не вызываются непосредственно. Сложные программные системы могут иметь свои подкаталоги в этом каталоге.
| |
/usr/local | Обычно здесь помещают программы и подкаталоги, которые являются локальными (уникальными) для данной машины.
| |
/usr/man | Страницы интерактивного руководства man в исходном формате (не подготовленные для просмотра). /usr/man/<locale>/man[1-9] — Эти каталоги содержат страницы руководств на различных языках (в зависимости от значения locale). Системы, которые используют один язык и один кодовый набор, могут не использовать подстроку <locale> | |
/usr/sbin | Этот каталог содержит готовые к исполнению программы для системного администрирования, которые не используются во время загрузки | |
/usr/src | Исходные тексты для различных частей Linux. /usr/src/linux — исходные тексты для ядра Linux | |
/usr/tmp | Еще одно место для хранения временных файлов. Обычно это символическая ссылка на каталог /var/tmp | |
/usr/X11R6 | Файлы относящиеся к системе X-Window (версии 11, релиз 6).
| |
/var | Этот каталог содержит файлы, в которых сохраняются различные переменные данные, определяющие конфигурацию некоторых программ при следующем запуске или временно сохраняемую информацию, которая будет использоваться позже в ходе текущего сеанса. Объем данных в этом каталоге может сильно изменяться, поскольку он содержит, например, файлы протоколов (логи), файлы спулинга и блокировки (locking), временные файлы и т. д. | |
/var/adm | Содержит учетную и диагностическую информацию, необходимую системному администратору | |
/var/backups | Этот каталог используется, чтобы сохранить резервную копию важных системных файлов | |
/var/catman/cat[1-9] | Этот каталог используется, чтобы хранить уже сформированные страницы руководств в соответствии с номером главы | |
/var/lock | Здесь содержатся управляющие файлы системы, которые используются для резервирования использования тех или иных ресурсов системы | |
/var/log | Различные файлы протоколов (логи) | |
/var/run | Переменные файлы времени выполнения различных программ. Они содержат идентификаторы процессов (PIDs) и записывают текущую информацию (utmp). Файлы в этом каталоге обычно очищаются во время загрузки системы | |
/var/spool | Файлы различных программ, поставленные в очередь на обслуживание.
| |
/var/tmp | Временные файлы |
Упорядочение файлов
Открыв папку или библиотеку, можно изменить представление файлов в окне. Например, могут понадобиться более крупные (или мелкие) значки или другое представление, позволяющее видеть разные типы сведений о каждом файле. Для такого рода изменений воспользуйтесь кнопкой Представления панели инструментов.
При каждом нажатии левой стороны кнопки «Представления» циклически меняется способ отображения файлов и папок. Всего таких представлений пять: «Крупные значки», «Список», «Таблица» со столбцами сведений о файле, «Плитка» (значки меньшего размера) и «Содержимое», показывающее часть содержимого файла.
Щелчок стрелки справа от кнопки «Представления» предоставляет и другие варианты. Для точной настройки размера значков файлов и папок перетащите ползунок вверх или вниз. Двигая ползунок, можно видеть изменение размера значков.
Варианты меню «Представления»
В библиотеках существует дополнительная возможность упорядочения файлов различными способами. Например, можно упорядочить файлы в библиотеке «Музыка» по жанру (такому как джаз или классика).
- Нажмите кнопку Пуск и затем выберите компонент Музыка.
2. В области библиотек (над списком файлов) откройте меню Упорядочить и выберите пункт Жанр.
Поиск файлов
В зависимости от количества файлов и способа их упорядочения поиск файла может означать просмотр сотен файлов и вложенных папок - непростая задача. Для экономии сил и времени при поиске нужного файла воспользуйтесь полем поиска.
Поле поиска
Поле поиска находится в верхней части каждого окна. Для поиска файла откройте папку или библиотеку, которые наиболее логично использовать в качестве отправной точки для поиска, щелкните поле поиска и начните ввод. Поле поиска фильтрует текущее представление на основе вводимого текста. В результате поиска отображаются файлы, соответствующие условиям, заданным для имени, меток, других свойств файла, или даже текста в текстовом документе.
При поиске файла с использованием свойства (такого как тип файла) можно сузить поиск до начала ввода, щелкнув поле поиска, а затем выбрав одно из свойств прямо под полем поиска. Это действие добавляет фильтр поиска (например «тип») в текст поиска, позволяя получить более точные результаты.
Если не удалось найти нужный файл, можно изменить всю область поиска, щелкнув один из вариантов в нижней части списка результатов поиска. Например, если поиск файла в библиотеке «Документы» закончился неудачей, можно щелкнуть Библиотеки, чтобы включить в поиск остальные библиотеки
Вывод. Изучил переназначение адреса, модуль mod_rewrite, перезапись URL по шаблону, упорядочение файлов, регистрацию, наследования, назначение основного каталога.
Домашнее задание:
Выучить конспект
Дата добавления: 2017-06-02; просмотров: 1105;