![]() | |
| |||||||
| Home | Register | Blogs | FAQ | Members List | Calendar | Downloads | Arcade | Mark Forums Read |
| Unix Linux Is Like A Wigwam - No Windows, No Gates And An Apache Inside... |
![]() |
| | LinkBack | Thread Tools | Display Modes |
| | #1 |
| Консервативный Демагог Join Date: Jan 2002 Location: Кавказская Албания
Posts: 889
Rep Power: 7 Reputation:
10 | Apache Web Server Установка, настройка и администрирование. Автор: Vahram Igityan <vx@web.am> about: Apache это веб сервер оргинально созданный для UNIX систем,имеющий свой API, со встроеным механизмом защиты и авторизации, который подходит как для "домащных" сететй так и для сайтов типа yahoo (сайт http://www.yahoo.com являеться самым посешяемым в Мире). Краткая история: После прекрщения существования проекта NCSA HTTPd (автором которого был Rob McCool) многие программисты начали писать заплаты для этого севера в целях устранения ошибок добавления новых функций, программисты постоянни обменивалиць етими заплатами ни ети все дейцтвия были неуправляемимы.Brian Behlendorf создал общедоступний репозиторий всеь этих заплат так радился проект Apache (что означает A Patchy - заплатаный). По статистике компании NetCraft, Apache в настоящее время является самым распространеным сервером в интернет. На сегоднешный день употребляються две ветки Апапча: </font><ul type="square"><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica"> 1.3.x Старая ветка которая являеться стабильной (автор советует скачать версию не ранее 1.3.26) и использует стандарный вариант создания процесса в системах UNIX (fork) </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica"> 2.0.x Новая ветка, в которой усовершенстован Apache API(Для naписания модулей), и которая работает методом UNIX Threads. </font></li></ul><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Так как ветка 2.0.х еще на експеремтальном уровне и не советуеться использоваться как production server то мы рассмотрим ветку 1.3.х Установка: Итак качаем Apache 1.3.26 с http://httpd.apache.org/ если нужен язык скриптинга PHP также качаем PHP s http://www.php.net/download. Распаковываем : tar -xvzf apache_1.3.26.tar.gz Переходим в директорию: cd apache_1.3.26 Есть 2 способа конфигурации апача, т.как этa статья назначена новичкам, я не буду описовать. сложный метод. Если мы не будем использовать PHP то набираем ./configure и Апаче начнет готовить себя для установке в директорию /usr/local, (если вы хотите другыю укавите ее с помощю --prefix=/my/path как ключь к configure). Если вы устовавливаете сервер под виндовс то автор советует скачать бинарнк апача под винндовс с http://httd.apache.org/httpd/binaries/win32/) Для активации PHP Качаем PHP Распаковываем: tar -xvzf php-4.x.x.tar.gz Конфигурем: ./configure --with-apache=/path/to/apache_1.3.26 Переьодим в директорию апача: ./configure --activate-module=src/modules/php4/libphp4.a ВНИНАНИЕ: директории /modules/php4/ да и файла libphp4.a не существют, они создаються при компиляции. Если все прошло без ошибок набираем: make make install (последную команду надо набирать от имени root-a) После этого в директории /usr/local/apache/sbin/ (/usr/local замените на ваш prefix) должен появиться файл httpd поздравлаю это и есть веб сервер! Сервер управляеться при помощи команд: /usr/local/apace/bin/apachectl start|stop|restart) В случае с rpm: /etc/init.d/httpd start|stop|restart Конфигурация: В каталоге /usr/local/apache/etc/ расположен файл httpd.conf , в случаи если это RadHat или Mandrake Linux и Apache устоновлен с rpm то файл конфигурации расположен в /etc/httpd/conf. В виндовс он расположен в "c:/program files/apache group/apache/conf/httpd.conf" (Пути написанны так специально т.к. апача там их так и понимает) После каждого изменения в файле httpd.conf сервер надо перегружать. Откройте httpd.conf в своем любимом редакторе (vim, pico, emacs, notepad). Все строки со знаком # в начале это комментарии которые как и пустые строки игнорируються. Директивы определены след. образом: directive option1 option2... однострочные Code: <MultyLineDirective something> directive option1 option2.. directive option1 option2.. </MultyLineDirective> Многострочные. Директивы: </font><ul type="square"><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">ServerType standalone которая может иметь значения inetd и snadalone. inetd давно устарел, ставить его не имеет смысла вообще. </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">ServerRoot /usr/local/apache обсолютный путь к катологу сервера. </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Port 80 Порт на котором будет слушать сервер </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">User nobody </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Group nobody Имя пользователя от которого будет работать сервер (UNIX only) ВНИМАНИЕ: Никогда не устонавливайте user на root это ПОТЕНЦИАЛЬНАЯ БРЕШ В БЕЗОПАСТНОСТИ. </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">ServerAdmin vx@freenet.am E-mail администратора сервера, который отображается н екране в случае. </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica"> ServerName http://www.wizard.am Имя сервера, не путайте его с настройками DNS, если DNS http://www.wizard.am не указывает на ваш сервер то он не будет отвечать на етот адрес. </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">DocumentRoot /path/to/html/files Директория которую апаче будет обслужовать. </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Alias /mydir/ /path/ouside/docroot/ Псвдоним для католога вне DocumentRoot к которому можно обращяться по адресу http://www.myserver.am/mydir/ </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">ScriptAlias /cgi-bin/ /path/to/cgi-bin/ Псевдоним для директории со скриптами </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">UserDir public_html имя котолога в домашнем каталоге пользователей в конкретной системе в котором находятся обшедоступные фаылы, к которым можно обращяться по адресу http://www.mydomain.am/~username </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">DirectoryIndex index.htm index.html index.php файл который будет выдоваться сервером при обращении к катологу например (при обращении к http://acid.land.am/ выдаеться http://acid.land.am/index.html ) </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica"> AccessLog /path/to/access.log Путь к файлу журнала, в который пишутся запоросы </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica"> ErrorLog /path/to/error.log Путь к файлу журнала, в который пишутся неудачно оконченые запоросы </font></li></ul><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Ограничение к доступу: Ограничение к доступу осушествляется при помощи директивы Directory Code: <Directory /www/html> Options None AllowOverride None Allow from All Deny from evil.machine </Directory> (Все вышеуказаные настройки распространяются также на подкотологи. Options: </font><ul type="square"><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Indexes Если в катологе не обнарувено файлов из DirectoryIndex то будет выдан листинг католога в HTML формате. </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Includes в этом катологе разрешено использовать Server Side Includes </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">FollowSynLinks если затребован файл которы </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">ExecCGI Запускать файлы как cgi скрипты в этой директории если на них стоит handler cgi-script </font></li></ul><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">P.S. Если на каком нибудь каталоге установлен один из опций и на его подкатологе снять и/или уснатовить новую опцию, то можно указать +- Option (например +Indexs) AllowOverride: .htaccess: Чтоб каждый раз не редактировать httpd.conf то можно разрешить пользователям устанавливать опции самим (например Аутентификацию, или -Indexes) </font><ul type="square"><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Options Дополнительные опции </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">AuthConfig Дерективы доступа (об этом поговориться в разделе трюки данного руководства) </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Limit .htaccess может содержать директивы allow, deny, order </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">FileInfo разрешение измения информации о типе документа (AddType) </font></li></ul><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Виртуальные Хосты: Виртуальные Хосты бывают двух видов </font><ul type="square"><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica"> На основе имен (например узел имеет один ip адрес и обслуживает несколько хостов) </font></li><li><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica"> На основе ip аддрессов (т.е. каждый ip отвечает за конкретный хост) </font></li></ul><font size="2" face="MS Sans Serif, , sans-serif, Verdana, Helvetica">Помню у меня как-то был сервер на котором былы как Name Based так и IP Based виртуаьные хосты. Внинамие: Если на сервере стоит хотябы один виртуальный хост, то глобальный DocumentRoot теряет свой смысл. При поытке обращения к северу на которм установленно неколько хостов путем написания IP адреса выдаеться хост который был сконфигурирован первым. Пример хостов на основе имен: Code: <VirtualHost 1.2.3.4> ServerName www.domain.am ServerAdmin admin@domain.am ServerAlias domain.am DocumentRoot /www/virtual/domain.am/html ScriptAlias /cgi-bin/ /www/virtual/domain.am/cgi-bin/ AccessLog /www/virtual/domain_am_access_log ErrorLog /www/virtual/domain_am_error_log <Directory /www/virtual/domain.am/> Options None AllowOverride None Order allow,deny Allow from All Deny from None </Directory> </VirtualHost> И другой тоже Хост который предназначен только для внутренегго использования Code: <VirtualHost 1.2.3.4> ServerName internal.domain.am ServerAdmin admin@domain.am DocumentRoot /www/virtual/internal.domain.am/html ScriptAlias /cgi-bin/ /www/virtual/internal.domain.am/cgi-bin/ AccessLog /www/virtual/internal_access_log ErrorLog /www/virtual/internal_error_log <Directory /www/virtual/internal.domain.am/> Options None AllowOverride None Order allow,deny Allow from 192.168.0.0/255.255.255.0 Deny from All </Directory> </VirtualHost> (предпологаеться что 192.168. это ваша локальная подсетка Тоже самое делаться при IP-Based витуал хостах, просто вместо ip адреса прописоваться другой Трюки: 1.Предположым вам надо запоролить конкретную директорию Code: <Directory /www/secret> AuthType Basic AuthName "my secret place" AuthUserFile /www/passwords require valid-user </Directory> 2. У вас на сервере находятся файлы .ankap которые на самом деле содержат html код, прописываем AddType text/html .ankap Сопрововждение: Чтоб просмотреть статитику домайна я предлагау использовать программы webalizer(http://mrunix.net/webalizer) Чтоб пролистать и "выловить из лога конкретную строку используйте след. команду: grep "1.2.3.4" /path/to/access/log Чтоб посмотреть последние 100 строчек: tail -n100 /path/to/access/log Чтоб мониторить лог в режиме реального времени: [b] tail -f /path/to/access/log [b], по окончаниу просмотра нажмите Ctl+C На этом я временно заканчиваю, буду рад услышать вашы вопросы, комментария, поправления в орфографии, я собираюсь продолжить эту статью про другие боле advanced директивы, написать про модули апача, про его API, примеры конфигурации, администрирования Webalizer-а и других подобных программ. © Vahram Igityan
__________________ Праздник к нам приходит... |^^^^^^^^^'''^\| ||\__ | ВОДКА-ВОДКА | ||','''|'''''''\_____,_ | _..... _ | ||_ _|'__|_____||.........| | '(@)'(@)'(@)''''''''''''''''''''''*|(@)""""|(@)* |
| | |
| | #2 |
| » | a shas vopros: ya nikak ne mogu normal'no nastroit' php(u menya Apache pod win) Code: <Directory "C:/www/php/">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
AddType application/x-httpd-php .php
Action application/x-httpd-php "c:/php/php.exe" [error] c:/www/php/z.php is not executable; ensure interpreted scripts have "#!" first line [error] couldn't spawn child process: c:/www/php/z.php esli dobavit' v php file #!c:/php/php.exe vse rabotaet chto nepravil'no ?
__________________ •·•· ·•·· ·· •·•· •·• |
| | |
| | #3 | |
| Школьник Join Date: Apr 2002 Location: Vanadzor
Posts: 227
Rep Power: 7 Reputation:
10 | Quote:
du vorpes CGI es ashxatacnum PHP-n, dra hamar el pti php.exe-i path@ gres.bayc es xorhurd ktam tenc chanes. porci senc. httpd.conf-i mej prosto avelacru es togher@ u php-n kashxati. filerd el voch te cgi-bin gci , ayl prosto htdocs. LoadModule php4_module modules/php4apache.dll Action application/x-httpd-php "/php/php.exe" AddType application/x-httpd-php .php | |
| | |
| | #4 |
| Консервативный Демагог Join Date: Jan 2002 Location: Кавказская Албания
Posts: 889
Rep Power: 7 Reputation:
10 | Z0mbie, sowetuu tebe zagruzit' module php v apache, variant straxa ne podxodit, nzado ukazatx direktoruu s filami php 1. nado ckopirowat' w papku c:\windows\ php4ts.dll Code: LoadModule php4_module c:/bin/php/sapi/php4apache.dll AddType application/x-httpd-php .php .php3 .phtml
__________________ Праздник к нам приходит... |^^^^^^^^^'''^\| ||\__ | ВОДКА-ВОДКА | ||','''|'''''''\_____,_ | _..... _ | ||_ _|'__|_____||.........| | '(@)'(@)'(@)''''''''''''''''''''''*|(@)""""|(@)* |
| | |
| | #5 |
| » | vo pervыx netu u menya nikakix dll vo vtorыx esli ya ne xochu ix ispol'zovat' chto bez stroki #!.. nikak ne oboytis' ?? ona mne ochen' sil'no meshaet, iz-za nee nevozmozhno ispol'zovat' Header() :[
__________________ •·•· ·•·· ·· •·•· •·• |
| | |
| | #6 |
| Консервативный Демагог Join Date: Jan 2002 Location: Кавказская Албания
Posts: 889
Rep Power: 7 Reputation:
10 |
__________________ Праздник к нам приходит... |^^^^^^^^^'''^\| ||\__ | ВОДКА-ВОДКА | ||','''|'''''''\_____,_ | _..... _ | ||_ _|'__|_____||.........| | '(@)'(@)'(@)''''''''''''''''''''''*|(@)""""|(@)* |
| | |
| | #7 | |
| Школьник Join Date: Apr 2002 Location: Vanadzor
Posts: 227
Rep Power: 7 Reputation:
10 | Quote:
rabotaet i eshe kak 2zombie vor module-ov(dll) anes, arden et problem@ ches unena. php code-t kgres prosto <? ?> tegeri mech. udachi. mek el chmoranas php.ini.dist file-@ copy anes c:\windows\php.ini | |
| | |
| | #8 |
| Консервативный Демагог Join Date: Jan 2002 Location: Кавказская Албания
Posts: 889
Rep Power: 7 Reputation:
10 | Soory for off-topic (prodojenniya razgowora po e-mailu) Strax: Sporim na 100$?
__________________ Праздник к нам приходит... |^^^^^^^^^'''^\| ||\__ | ВОДКА-ВОДКА | ||','''|'''''''\_____,_ | _..... _ | ||_ _|'__|_____||.........| | '(@)'(@)'(@)''''''''''''''''''''''*|(@)""""|(@)* |
| | |
| | #9 |
| Младенец Join Date: Nov 2002 Location: Wild Wild West
Posts: 17
Rep Power: 0 Reputation:
10 | Kstati po moemu rabotaet i v CGI variante tol'ko nujno pod windami nastroit accos tak chtob files s rashireniem php zapuskalis' pri pomoshi php.exe komanda po moemu tak i naz@vaetsja assoc -- Dark --- |
| | |
| | #10 |
| Младенец Join Date: Sep 2002 Location: Yerevan,Armenia
Posts: 10
Rep Power: 0 Reputation:
10 | офигительний copy-paste, вернее copies and pastes !! |
| | |
| | #11 |
| Консервативный Демагог Join Date: Jan 2002 Location: Кавказская Албания
Posts: 889
Rep Power: 7 Reputation:
10 | Karen, eto ne copy /past. Protso kogda megrirovali s bazy odnogo foruma s drugogo, polichilis' eti '<font face>'-i ![]()
__________________ Праздник к нам приходит... |^^^^^^^^^'''^\| ||\__ | ВОДКА-ВОДКА | ||','''|'''''''\_____,_ | _..... _ | ||_ _|'__|_____||.........| | '(@)'(@)'(@)''''''''''''''''''''''*|(@)""""|(@)* |
| | |
| | #12 |
| Младенец Join Date: Sep 2002 Location: Yerevan,Armenia
Posts: 10
Rep Power: 0 Reputation:
10 | я имел ввиду какраз не теги а текст |
| | |
| | #13 |
| Консервативный Демагог Join Date: Jan 2002 Location: Кавказская Албания
Posts: 889
Rep Power: 7 Reputation:
10 | Карен, как вы думаете, если б ето был копи/паст? то было бы допусчено столько синтаксических и орфографических ошибок? Или на это вы можете привести "довод" что это я "зделал так" чтоб потом оправдоваться? Мне не зачем перед вами оправдоватся или что-то вам доказовать Г-н Мкоян, тем более в том что я не совершал. И наконец если вы решите продолжать настаевать на своем, то попрошу высказовать мысль фактами, иначе я обращусь к модератору данной секции стереть ваши сообщения. Чеерс Vahram Igityan
__________________ Праздник к нам приходит... |^^^^^^^^^'''^\| ||\__ | ВОДКА-ВОДКА | ||','''|'''''''\_____,_ | _..... _ | ||_ _|'__|_____||.........| | '(@)'(@)'(@)''''''''''''''''''''''*|(@)""""|(@)* |
| | |
| | #14 |
| Creator Join Date: Jun 2002 Location: Sliema, Malta
Posts: 23
Rep Power: 0 Reputation:
10 | Господа! Такой вопрос на тему о Apache! Кто нибудь использовал Apache 2.0.x + mod_ssl (ну и, разумеется, другие модули) на FreeBSD или на какой нибудь другой системе? Прошу ваши мнения. ![]()
__________________ Делаешь - не бойся, боишься - не делай! |
| | |
| | #15 |
| Administrator Join Date: Sep 2001 Location: South Korea, Gumi
Posts: 7,189
Blog Entries: 15 Rep Power: 10 Reputation:
313 | А в чем собственно проблема? Apache 2.0 еще не stable, хотя www.apache.org сидит на нем. |
| | |