Т.к. система должна быть максимально мобильной, поднимаю веб-сервер на базе виртуальной машины. Все программное обеспечение использую с открытым исходным кодом, бесплатное.
Для виртуальной машины вырал virtualbox:
https://www.virtualbox.org/wiki/Downloads
Операционную систему использую Linux Ubuntu:
http://www.ubuntu.com/
После того, как установил Linux Ubuntu в вируальной машине VirtualBox, устанавливаю веб-сервер nginx и PHP-FPM:
1 |
apt-get install nginx |
1 |
apt-get install php5-cli php5-common php5-mysql php5-gd php5-fpm php5-cgi \ |
1 |
php5-fpm php-pear php5-mcrypt |
Редактируем файл:
1 |
/etc/php5/fpm/php.ini |
1 |
cgi.fix_pathinfo = 0 |
Редактируем файл:
1 |
/etc/php5/fpm/pool.d/www.conf |
1 |
security.limit_extensions = .php .php3 .php4 .php5 |
1 |
listen = /var/run/php5-fpm.sock |
1 2 3 |
listen.owner = www-data listen.group = www-data listen.mode = 0660 |
Перезагружаем:
1 |
service php5-fpm restart |
Для удобства, ставлю некоторые из утилит:
1 |
apt-get install mc, htop |
Устанавливаю DNS-сервер для настройки ns-сервера и доменных зон:
1 |
apt-get install bind9 |
mc – это удобный файловый менеджер.
htop – удобное средство для просмотра загрузки процессоров.
1 |
apt-get install whois |
whois – сервис для получения информации о доменах.
Еще некоторые команды, которые могут понадобиться при настройке доменов.
dig название домена – определение информации о настройках домена .
nslookup название домена – просмотр ns-серверов домена.
Устанавливаем Apache2
Для сайтов, которым нужен rewrite устанавливаем Apache2:
apt-get install apache2
1 2 3 4 |
a2enmod ssl a2enmod rewrite a2enmod suexec a2enmod include |
apt-get install libapache2-mod-php5
apt-get install php5-curl
Ставим RPaf
1 |
RPaf нужен для определения ip-адреса клиента. |
1 2 |
apt-get install libapache2-mod-rpaf a2enmod rpaf |
Устанавливаем MySQL
1 |
apt-get install mysql-server mysql-client mysql-common |
Устанавливаем Memcahed
1 |
apt-get install memcached php5-memcached |
Настройка рабочего места веб-разрабочика
Для работы с веб-сервером, удобно поставить такое программное-обеспечение:
putty – клиент терминала.
filezilla – файловый менеджер, передающий файлы по ssh.
Данное программное обеспечение – с открытым исходным кодом, бесплатное и кросс-платформенное. Прекрасно зарекомендовало себя при работе с веб-сервером.
Настройка конфигов Nginx
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
server { listen *:80; server_name НАЗВАНИЕ_ДОМЕНА; access_log /var/log/nginx/access.log; # Перенаправление на back-end location / { proxy_pass НАЗВАНИЕ_ДОМЕНА:8080/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_connect_timeout 120; proxy_send_timeout 120; proxy_read_timeout 180; } # Статическиое наполнение отдает сам nginx # back-end этим заниматься не должен location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|swf|js|html|txt|exe|7z|rar|pdf)$ { root КОРНЕВОЙ_КАТАЛОГ; } } |
Другие полезные утилиты на хостинге
Просмотр объема трафика в терминале:
apt-get install iptraf
Чтоб просмотреть трафик, просто наберите в терминале: iptraf
Просмотр объема трафика в веб-виде:
apt-get install darkstat
После установки, изменяем конфиг /etc/darkstat/init.cfg
# Turn this to yes when you have configured the options below.
START_DARKSTAT=yes
# Don’t forget to read the man page.
# You must set this option, else darkstat may not listen to
# the interface you want
INTERFACE=”-i eth0″
#DIR=”/var/lib/darkstat”
PORT=”-p 666″
#BINDIP=”-b 127.0.0.1″
#LOCAL=”-l 192.168.0.0/255.255.255.0″
# File will be relative to $DIR:
#DAYLOG=”–daylog darkstat.log”
# Don’t reverse resolve IPs to host names
#DNS=”–no-dns”
#FILTER=”not (src net 192.168.0 and dst net 192.168.0)”
# Additional command line Arguments:
# OPTIONS=”–syslog –no-macs”
service darkstat start
Чтоб посмотреть трафик просто в браузере наберите:
http://ip-адрес_Вашего_сервера:666
https://corp2.info/razrabotka-i-sozdanie-sajtov-internet-magazinov-veb-proektov-kiev-1038.html
Leave a Reply