Построение динамических сайтов при помощи Perl и PHP



В последние годы все большее число компаний обращает внимание на Интернет как площадку для ведения и расширения бизнеса. Среди прочего, этот процесс подчеркивает потребность в интерактивном содержимом сайтов. Некоторые компании, такие как Microsoft, представляют свои закрытые решения; сообщество разработчиков открытых программ отвечает на вызов. Два возможных пути решения проблемы динамического контента — mod_perl и mod_php.

Mod_perl

Проект интеграции Apache/Perl объединяет мощь языка программирования Perl и HTTP сервера Apache. С модулем mod_perl возможно написание модулей Apache полностью на Perl. Кроме того, постоянно запущенный встроенный в сервер интерпретатор позволяет не тратить ресурсы на запуск внешнего интерпретатора и время на запуск Perl.

mod_perl можно использовать различными способами. Помните, что mod_perl 1.0 работает только с Apache 1.3, тогда как mod_perl 2.0 совместим только с Apache 2. mod_perl 1.0 доступен как порт www/mod_perl, а также в виде статически скомпилированной версии в www/apache13-modperl. mod_perl 2.0 доступен как www/mod_perl2.

Mod_php

PHP, также известный как ''Препроцессор гипертекста'' (''Hypertext Preprocessor''), — это скриптовый язык общего назначения, в основном предназначенный для веб разработки. Этот язык может быть встроен в HTML, его синтаксис заимствован из C, Java и Perl, и он позволяет веб разработчикам быстро писать динамически генерируемые страницы.

Добавление поддержки PHP5 к веб серверу Apache производится путем установки порта www/mod_php5.

Этот порт устанавливает и настраивает модули, необходимые для поддержки динамических PHP веб страниц. Убедитесь, что в файл /usr/local/etc/apache/httpd.conf были добавлены следующие секции:

LoadModule php5_module   libexec/apache/libphp5.so

AddModule mod_php5.c

<IfModule mod_php5.c>

   DirectoryIndex index.php index.html

</IfModule>

<IfModule mod_php5.c>

   AddType application/x-httpd-php .php

   AddType application/x-httpd-php-source .phps

</IfModule>

Для загрузки модуля PHP после этого просто вызовите команду apachectl с параметром graceful:

# apachectl graceful

Поддержка PHP в FreeBSD построена по модульному принципу, поэтому базовая установка обладает очень ограниченной функциональностью. Дополнительная функциональность может быть легко добавлена при помощи порта lang/php5-extensions, управляющего набором расширений PHP через меню, либо просто путем установки дополнительных портов.

Например, для добавления поддержки MySQL к PHP5, просто установите порт databases/php5-mysql.

После установки новых расширений сервер Apache должен быть рестартован, чтобы изменения в конфигурации вступили в силу:

# apachectl graceful

26.8. Файл сервер и печать для Microsoft® Windows клиентов (Samba)

Обзор

Samba это популярный пакет программ с открытыми исходными текстами, которая предоставляет файловые и принт-сервисы Microsoft Windows клиентам. Эти клиенты могут подключаться и использовать файловое пространство FreeBSD, как если бы это был локальный диск, или принтеры FreeBSD, как если бы это были локальные принтеры.

Пакет Samba должен быть включен в поставку FreeBSD. Если вы не установили Samba при первой установке системы, ее можно установить из порта или пакета net/samba3.

Настройка

Файл настройки Samba по умолчанию устанавливается в /usr/local/etc/smb.conf.default. Этот файл необходимо скопировать в /usr/local/etc/smb.conf и отредактировать перед использованием Samba.

В файле smb.conf находится информация, необходимая для работы Samba, например определение принтеров и ''общих каталогов'', которые будут использоваться совместно с Windows клиентами. В пакет Samba входит программа с веб интерфейсом, называемая swat, которая дает простой способ редактирования файла smb.conf.

Использование Samba Web Administration Tool (SWAT)

Программа веб администрирования Samba (Samba Web Administration Tool, SWAT) запускается как даемон из inetd. Следовательно, в /etc/inetd.conf необходимо снять комментарий перед тем, как использовать swat для настройки Samba:

swat stream tcp nowait/400 root /usr/local/sbin/swat

Как описано в Прим. 26-1, после изменения настроек inetd необходимо перечитать конфигурацию.

Как только swat был включен inetd.conf, вы можете использовать браузер для подключения к http://localhost:901. Сначала необходимо зарегистрироваться с системной учетной записью root.

После успешного входа на основную страницу настройки Samba, вы можете просмотреть документацию или начать настройку, нажав на кнопку Globals. Раздел Globals соответствует переменным, установленным в разделе [global] файла /usr/local/etc/smb.conf.

Глобальные настройки

Независимо от того, используете ли вы swat, или редактируете /usr/local/etc/smb.conf непосредственно, первые директивы, которые вы скорее всего встретите при настройке Samba, будут следующими:

workgroup

   Имя домена или рабочей группы NT для компьютеров, которые будут получать доступ к этому серверу.

netbios name

   Устанавливает имя NetBIOS, под которым будет работать Samba сервер. По умолчанию оно устанавливается равным первому компоненту DNS имени хоста.

server string

   Устанавливает строку, которая будет показана командой net view и некоторыми другими сетевыми инструментами, которые отображают строку описания сервера.

Настройки безопасности

Две из наиболее важных настроек в /usr/local/etc/smb.conf отвечают за выбор модели безопасности и за формат паролей для клиентов. Эти параметры контролируются следующими директивами:

security

   Два наиболее часто используемых параметра это security = share и security = user. Если имена пользователей для клиентов совпадают с их именами на компьютере FreeBSD, вы возможно захотите включить безопасность уровня пользователя (user). Это политика безопасности по умолчанию, она требует, чтобы клиент авторизовался перед доступом к совместно используемым ресурсам.

На уровне безопасности share клиенту не требуется входить на сервер перед подключением к ресурсу. Эта модель безопасности использовалась по умолчанию в старых версиях Samba.

passdb backend

   Samba поддерживает несколько различных подсистем аутентификации. Вы можете аутентифицировать клиентов с помощью LDAP, NIS+, базы данных SQL, или через модифицированный файл паролей. Метод аутентификации по умолчанию smbpasswd, и здесь рассматривается только он.

Предполагая, что используется подсистема по умолчанию smbpasswd, необходимо создать файл /usr/local/private/smbpasswd, чтобы Samba могла аутентифицировать клиентов. Если вы хотите разрешить всем учетным записям UNIX доступ с Windows клиентов, используйте следующую команду:

# grep -v "^#" /etc/passwd | make_smbpasswd > /usr/local/private/smbpasswd

# chmod 600 /usr/local/private/smbpasswd

Обратитесь к документации на Samba за дополнительной информацией о параметрах настройки. Основные настройки, рассмотренные здесь, достаточны для первого запуска Samba.

Запуск Samba

Для запуска Samba при загрузке системы, добавьте в /etc/rc.conf следующую строку:

samba_enable="YES"

Затем вы можете запустить Samba в любой момент, набрав:

# /usr/local/etc/rc.d/samba.sh start

Starting SAMBA: removing stale tdbs :

Starting nmbd.

Starting smbd.

Samba состоит из трех отдельных даемонов. Вы можете видеть, что nmbd и smbd запускаются скриптом samba.sh. Если вы включили сервис разрешения имен winbind в smb.conf, то увидите также запуск даемона winbindd.

Вы можете остановить Samba в любой момент, набрав:

# /usr/local/etc/rc.d/samba.sh stop

Samba это сложный программный набор с функциональностью, позволяющей полную интеграцию в сети Microsoft Windows. За дальнейшей информацией о функциях, выходящих за рамки описанной здесь базовой установки, обращайтесь к http://www.samba.org.


Дата добавления: 2018-10-26; просмотров: 190; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!