Apache

Apache - a patchy server                       

Created Пятница 11 Апрель 2014

Документация к серверу Apache:             http://httpd.apache.org/docs/2.0/ru/

                                                                              http://www.apache.ru/docs/

Мысли о сервере Apache....:                          http://apachedev.ru/2006/03/12

Установка Apache в Debian (wiki-Debian):   https://wiki.debian.org/ru/Apache

Все о PHP, MySQL и не только:                           http://www.php.su/

phpMyAdmin RU:                                                    http://php-myadmin.ru/

«Денвер»:                                                     http://www.denwer.ru/

Справочное руко водство по MySQL:                 http://www.mysql.ru

PDF                                                                     Web-server Apache.pdf

PDF ст.81 ... и далее.                                          Котеров-Костарев-PHP

Apache - Solaris                                                 https://habr.com/ru/post


Стандартная установка Apache на Debian

1.Обновить все пакеты в системе

aptitude update && aptitude upgrade


2.Установить нужные пакеты:

aptitude install apache2 php5 php5-mysql mysql-server proftpd


3.По завершении установки настроем apache так, что бы можно было держать два(или более) разных сайтов на одной машине и это будет, что то типа "разделенного хостинга", пример простейшей виртуализации без разделения пространства имен. Для этого создадим для каждого сайта отдельные директории в папке /var/www/. Будут использоваться два сайта с именами maintest и secondtest, поэтому создам такие директории:

mkdir /var/www/maintest

mkdir /var/www/secondtest


4.Создать файлы логов для каждого сайта

touch /var/log/apache2/maintest-error.log

touch /var/log/apache2/secondtest-error.log


5.Настроить конфиг для каждого сайта. Перейдите в директорию /etc/apache2/sites-available/ командой:

cd /etc/apache2/sites-available

Создайте в ней два файла с именами сайтов.

touch maintest

touch secondtest

**если дефолтный конфиг имеет расширение например: 000-default.conf, то соответственно добавить к именам, расширение .conf


6.Заполнить каждый файл настройками. Открываем в любом редакторе,  и пишем:

(содержание лучше брать из 000-default.conf или какой у вас)

<VirtualHost *:80>

ServerName maintest

DocumentRoot /var/www/maintest

ErrorLog /var/log/apache2/maintest-error.log

</VirtualHost>

Аналогичные операции нужно проделать и со вторым файлом, лишь заменив maintest на secondtest(ну или ваше название).


7.Теперь нужно активировать сайты. Кроме рекомендовано деактивировать стандартный конфиг, что бы клиенты могли получать доступ только к /var/www/maintest или /var/www/secondtest.

a2ensite maintest

a2ensite secondtest

a2dissite 000-default.conf

Утилита a2ensite(apache2 enable site) активирует сайт, добавляя на него симлинк в папку /etc/apache2/sites-enabled, а утилита a2dissite(apache2 disable site)  дективирует сайт.   .....service apache2 reload


8.Если вам не нужны стандартные конфиги, вы можете их удалить командой:

rm /etc/apache2/sites-available/default* -R


9.Перезапустить apache2

/etc/init.d/apache2 restart

или

service apache2 reload


10.Теперь изменим файл hosts на рабочей машине.

c:\WINDOWS\System32\drivers\etc\hosts --->> Windows

/etc/hosts --->>linux

127.0.0.1 maintest

127.0.0.1 secondtest

192.168.1.102 maintest

192.168.1.102 secondtest


на windows машине получился например так:

192.168.1.102 maintest

192.168.1.102 secondtest

.....как угодно


11.После перезагрузки проверим как все работает, и как себя чувствует php. Для этого создадим два файла, один в /var/www/maintest/, а другой в /var/www/secondtest/. Оба назовем index.php:

cd /var/www/

touch /var/www/maintest/index.php

touch /var/www/secondtest/index.php

PS: Не забыть сменить пользователя на директорию сайта:

$ cd /var/www/

$ ls -al

$ drwxr-xr-x  2 root root 4.0K Aug 12 13:30 maintest/

$ sudo chown -R www-data:www-data maintest

$ ls -al

$ drwxr-xr-x  2 www-data www-data 4.0K Aug 12 13:34 maintest/


12.Заполним каждый следующими строчками:

<?php

print_r (phpinfo());

?>

13.Потом попробуйте с вашей рабочей машины зайти на maintest или secondtest. Вы должны увидеть следующее: http://maintest/

Базовая настройка proftpd на Debian и FreeBSD 

ProFTPd  использует лишь один конфигурационный файл proftpd.conf , в редактировании которого собственно и заключено конфигурирование сервера, располагается по умолчанию в:

Конфиги сервера в большом количестве разбросанные по интернету рекомендуется изучить и отредактировать самостоятельно:

http://bezopasnik.org/linux/dok/Debian/21.htm

http://linux4u.jinr.ru/docs/master.doc/admin-html/ch09s03.html

http://www.inattack.ru/article/uyazvimosti-ftp-servisov

Сервер может быть настроен для работы как одного так и нескольких виртуальных хостов,

Выполним если еще нет...:  sudo apt-get install proftpd

Соглашаемся со всем. На выбор два варианта запуска демона:

From inetd - демон ProFTPd будет работать из-под службы inetd.

Standalone - ProFTPd будет установлен как самостоятельный демон.

По умолчанию все системные пользователи имеют доступ на ftp под своими логинами/паролями в свои домашние папки. Настройки proftpd по адресу “/etc/proftpd/proftpd.conf”. Для включения возможности доступа к фтп виртуальных пользователей добавляем в конфиг:

# использовать данные файла для аутентификации

AuthUserFile /etc/proftpd/ftpd.passwd

# разрешить виртуальных пользователей

RequireValidShell off

# запрет логиниться под рутом на фтп

RootLogin off

Выполняем touch /etc/proftpd/ftpd.passwd , что создаст нам файл для виртуальных пользователей. После этого добавим нового не системного пользователя:

ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=_ИМЯ_ --shell=/bin/false --home=/ДИРЕКТОРИЯ/ --uid=ХХ --gid=ХХ

Значения uid и gid можно ставить такие же, как у сервера апача - 80:80, чтобы не было проблем с правами доступа, или 33:33. Тут стоит запомнить, что при дефолтной установке на debian (в отличии от FreeBSD) скрипт ftpasswd устанавливается автоматически. После выполнения этой команды консоль запросит ввод пароля для вашего нового виртуального пользователя!

После этого рестарт proftpd:   service proftpd restart

Для проверки  перейдите по:  ftp://maintest.

https://ppt-online.org/topcat/db

применение файлов .htaccess

Created Saturday 28 November 2015

Для того, что бы эти файлы (.htaccess) можно было использовать — необходимы соответствующие настройки главного конфигурационного файла. В файле httpd.conf (/etc/apache2/apache2.conf) должны быть прописаны директивы, которые разрешат файлу .htaccess переопределять конфигурацию web-сервера в каталоге. Эта директива называется AllowOverride. Она может быть установлена как для всего сервера (глобально), так и для отдельного каталога.

PS:Директива(указание, команда) она же "прагма"(pragmatic information) целевая информация, граница между секциями .т.д


Директива AllowOverride может включать в себя одну из следующих директив или их комбинацию: 

All, None, AuthConfig, FileInfo, Indexes, Limit, Options.

Для того чтобы дать директивам файлов .htaccess максимальные права следует прописать:

< AllowOverride All >

Далее: .htaccess и .htpasswd — защита доступа



Для удобства работы с базой данный  можно установить phpmyadmin  aptitude install phpmyadmin  все!!!!!!!!!