Virus Killer
Головна | Реєстрація | Вхід
Субота, 18.05.2024, 17:42
Меню сайту
Форма входу
Категорії розділу
PHP [2]
MySQL [0]
HTML [1]
CSS [0]
JavaScript [0]
JQuery [0]
Інші [1]
В цій категорій розміщюються всі решта мови програмування.
Пошук
Головна » Статті » Програмування » PHP

НАЛАШТУВАННЯ APACHE 2 + NGINX + PHP 5 + MYSQL + MEMCACHED + EACCELERATOR В DEBIAN

Налаштування apache 2 + nginx + php 5 + MySQL + memcached + eaccelerator в Debian

mini-debiandesktop.png


Отже, сьогодні я розкажу вам як підняти Веб сервер на слабенькому комп'ютері або VDS / VPS. Для того, щоб приступити до налаштування серверу ознайомтесь з LAMP
Для роботи з сервером використовую VDS від infiumhost.com такої конфігурації.
VDS-Mini: 900 Мгц, 256 Мб, 12 Гб, Debian 5.0

Ну що для початку оновим нашу систему.
aptitude update
aptitude upgrade

Встановлюєм функцію WGET, якщо вона відсутня
aptitude install wget make


Встановлюєм WebMin для зручнішої навігації по серверу (після установки він доступний за адресою https://ваш адреса:10000)
dpkg --install webmin_1.550_all.deb

Встановлюєм SHH 
aptitude install ssh openssh-server

Встановлюэм g++
aptitude install g++ 

Тепер нам потрібно встановити LAMP
aptitude install mysql-server mysql-client libmysqlclient15-dev apache2 apache2-doc 
apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 
libapache2-mod-ruby php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear 
php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql 
php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl phpmyadmin

По ходу встановлення вводимо пароль користувача сервера MySQL (root):

Редагуєм конфіг по замовчуванню, і далі від нього і відштовхуємося при створенні віртуалхостів:
nano /etc/apache2/sites-available/default (все стираємо і налаштовуємо під ваші потреби)
(Порт 81 це не помилка, так і повинно бути, бо слухати 80й порт у нас буде Nginx, і в апач передавати тільки запити на динаміку (PHP і ін)):

<VirtualHost *:81>
ServerAdmin webmaster@твій_сайт
DocumentRoot /var/www/твій_сайт
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride All
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
 Alias /doc/ "/usr/share/doc/"
 <Directory "/usr/share/doc/">
 Options Indexes MultiViews FollowSymLinks
 AllowOverride All
 Order deny,allow
 Deny from all
 Allow from 127.0.0.0/255.0.0.0 ::1/128
 </Directory>
</VirtualHost>
Робимо посилання на наш файл в папці /etc/apache2/sites-enabled/

Редагуєм файл nano /etc/apache2/apache2.conf в двох місцях
MaxClients 20

Ставим nginx + apache2-mod-rpaf
wget http://ftp.de.debian.org/debian/pool/main/n/nginx/nginx_0.7.62-1_i386.deb
dpkg -i nginx_*
aptitude install libapache2-mod-rpaf
nano /etc/apache2/ports.conf
NameVirtualHost *:81
Listen 81

Далі налаштовуємо віртуальний хост Апачу:
Копіюєм дефолтновий конфіг і редагуєм під себе
cd /etc/apache2/sites-available
cp ./default /etc/apache2/sites-enabled/example.com

Налаштовуємо GZIP стиснення для Nginx. І сам Nginx (worker_processes 1; ставимо рівній кількості ядер в процесорі). Відкриваємо конфіг:
nano /usr/local/etc/nginx/nginx.conf

все стираємо і робимо так:
user www-data;
worker_processes 1;

error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;

events {
 worker_connections 1024;
}

http {
 include /etc/nginx/mime.types;
 default_type application/octet-stream;
 server_names_hash_bucket_size 64;
 access_log /var/log/nginx/access.log;

 sendfile on;
 #tcp_nopush on;

 #keepalive_timeout 0;
 keepalive_timeout 65;
 tcp_nodelay on;


 gzip on;
 gzip_proxied any;
 gzip_min_length 1100;
 gzip_http_version 1.0;
 gzip_buffers 4 8k;
 gzip_comp_level 9;
 gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;


 include /etc/nginx/conf.d/*.conf;
 include /etc/nginx/sites-enabled/*;
}

Для нашого віртуалхоста створюємо новий конфіг:
nano /etc/nginx/sites-enabled/example.com

server {
listen 80;
server_name example.com;
access_log /var/log/nginx.access_log;
location ~* .(jpg|jpeg|gif|png|css|zip|tgz|gz|
rar|bz2|doc|xls|exe|pdf|ppt|tar|wav|bmp|rtf|swf|ico|flv|txt|xml|docx|xlsx)$ {
root /var/www/test.gigma.ru/;
index index.html index.php;
access_log off;
expires 30d;
}
location ~ /.ht {
deny all;
}
location / {
proxy_pass http://127.0.0.1:81/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-for $remote_addr;
proxy_set_header Host $host;
proxy_connect_timeout 60;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_redirect off;
proxy_set_header Connection close;
proxy_pass_header Content-Type;
proxy_pass_header Content-Disposition;
proxy_pass_header Content-Length;
}
} 

З такими налаштуваннями Nginx у нас віддає всю статику (картинки, відіое, музику, CSS, ява скрипти і ін), А апач працювати тільки над виконанням PHP.

Встановлюємо Memcached:
aptitude install memcached

Наступні дії необовязкові!
Встановлюємо Eaccelerator.
aptitude install php5-dev 
aptitude install make
cd /tmp/ 
wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2 
tar xvjf eaccelerator-0.9.5.3.tar.bz2 
cd eaccelerator-0.9.5.3 
phpize 
./configure --enable-eaccelerator=shared 
make 
make install

Створюємо папку кеша:
mkdir -p /var/cache/eaccelerator 
chmod 0777 /var/cache/eaccelerator

Редагуємо конфіг PHP:
nano /etc/php5/apache2/php.ini

Додаємо рядки в самому верху:

[PHP]

; eAccelerator configuration
; Note that eAccelerator may also be installed as a PHP extension or as a zend_extension
; If you are using a thread safe build of PHP you must use
; zend_extension_ts instead of zend_extension
extension = "eaccelerator.so"
eaccelerator.shm_size = "16"
eaccelerator.cache_dir = "/var/cache/eaccelerator"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.check_mtime = "1"
eaccelerator.debug = "0"
eaccelerator.filter = ""
eaccelerator.shm_max = "0"
eaccelerator.shm_ttl = "0"
eaccelerator.shm_prune_period = "0"
eaccelerator.shm_only = "0"
eaccelerator.compress = "1"
eaccelerator.compress_level = "9"
eaccelerator.allowed_admin_path = "/var/www/eaccelerator"

Перезапускаєм наш сервер:
/etc/init.d/apache2 restart
/etc/init.d/nginx restart
/etc/init.d/memcached restart

Ось і наш севре готовий, надіюсь дана стаття допомогла вам.

Джерело: http://toloka.org/pages/more/nalashtuvannja-apache-2-+-nginx-+-php-5-+-mysql-+-memcached-+-eaccelerator-v-debian.html
Категорія: PHP | Додав: YCsys (08.07.2012)
Переглядів: 1327 | Коментарі: 1 | Теги: nginx, memcached, PHP, MySql, Apache2, Lamp, eaccelerator | Рейтинг: 0.0/0
Всього коментарів: 0
Ім`я *:
Email *:
Код *:
Міні-чат
Друзі сайту
Статистика

Онлайн всього: 1
Гостей: 1
Користувачів: 0
Block title
Copyright YCsystem © 2024