Web-server на базе Nginx, php5-fpm, mysql на Debian Wheezy — различия между версиями

Материал из megapuper
Перейти к: навигация, поиск
Строка 18: Строка 18:
 
Обновляемся
 
Обновляемся
 
  # aptitude update
 
  # aptitude update
 
 
Ставим php и модули(по мере надобности)
 
# aptitude install php5-fpm php5-cli php5-common php5-mysql php5-gd php5-curl php5-mcrypt php5-xcache php-pear
 
 
 
Создаём папки
 
# mkdir /var/log/php5
 
# mkdir /srv/www
 
 
 
Правим конфиги
 
 
'''/etc/php5/fpm/pool.d/site.conf'''
 
[site]
 
prefix = /srv/www/$pool
 
listen = 127.0.0.1:10001
 
listen.allowed_clients = 127.0.0.1
 
listen.owner = www-data
 
listen.group = www-data
 
listen.mode = 0660
 
user = www-data
 
group = www-data
 
pm = dynamic
 
pm.max_children = 35
 
pm.start_servers = 5
 
pm.min_spare_servers = 2
 
pm.min_spare_servers = 2
 
pm.max_spare_servers = 8
 
pm.max_requests = 1000
 
pm.status_path = /status/php-fpm/$pool
 
request_terminate_timeout = 0
 
request_slowlog_timeout = 1m
 
slowlog = /var/log/php5/$pool.slow.log
 
catch_workers_output = yes
 
 
Отключаем уязвимость: http://forum.antichat.ru/thread222063-php-fpm.html<br/>
 
прописываем в /etc/php5/fpm/php.ini
 
cgi.fix_pathinfo=0
 
  
  
Строка 122: Строка 83:
 
  }
 
  }
 
  }
 
  }
 +
 +
 +
Ставим php и модули(по мере надобности)
 +
# aptitude install php5-fpm php5-cli php5-common php5-mysql php5-gd php5-curl php5-mcrypt php5-xcache php-pear
 +
 +
 +
Создаём папки
 +
# mkdir /var/log/php5
 +
# mkdir /srv/www
 +
 +
 +
Правим конфиги
 +
 +
'''/etc/php5/fpm/pool.d/site.conf'''
 +
[site]
 +
prefix = /srv/www/$pool
 +
listen = 127.0.0.1:10001
 +
listen.allowed_clients = 127.0.0.1
 +
listen.owner = www-data
 +
listen.group = www-data
 +
listen.mode = 0660
 +
user = www-data
 +
group = www-data
 +
pm = dynamic
 +
pm.max_children = 35
 +
pm.start_servers = 5
 +
pm.min_spare_servers = 2
 +
pm.min_spare_servers = 2
 +
pm.max_spare_servers = 8
 +
pm.max_requests = 1000
 +
pm.status_path = /status/php-fpm/$pool
 +
request_terminate_timeout = 0
 +
request_slowlog_timeout = 1m
 +
slowlog = /var/log/php5/$pool.slow.log
 +
catch_workers_output = yes
 +
 +
Отключаем уязвимость: http://forum.antichat.ru/thread222063-php-fpm.html<br/>
 +
прописываем в /etc/php5/fpm/php.ini
 +
cgi.fix_pathinfo=0
  
  

Версия 17:27, 20 июня 2014

Добавляем ключи и репозитории

# wget http://nginx.org/keys/nginx_signing.key
# apt-key add nginx_signing.key

# wget http://www.dotdeb.org/dotdeb.gpg
# apt-key add dotdeb.gpg
 
# apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A


/etc/apt/sources.list

deb     http://nginx.org/packages/debian wheezy nginx
deb     http://packages.dotdeb.org wheezy all
deb     http://repo.percona.com/apt wheezy main


Обновляемся

# aptitude update


Ставим nginx

# aptitude install nginx 


Создаём директорию для сайта и даём права

# /srv/www/site
# chown -R www-data:www-data /srv/www/site


Правим конфиги (сам nginx начинает читать файл /etc/nginx/nginx.conf, все остальные подключаются директивой include. )

/etc/nginx/nginx.conf

user www-data;
worker_processes  4;
error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;
events {
worker_connections  1024;
}

http {
access_log    /var/log/nginx/access.log;
error_log     /var/log/nginx/error.log;
include       /etc/nginx/mime.types;
default_type  application/octet-stream;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout  65;
gzip  on;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_proxied any;
gzip_vary off;
gzip_types text/plain text/css application/x-javascript text/xml application/xml application/rss+xml application/atom+xml text/javascript application javascript application/json text/mathml;
gzip_min_length  1000;
gzip_disable     "MSIE [1-6].";
client_max_body_size 10m;
server_names_hash_bucket_size 64;
types_hash_max_size 2048;
types_hash_bucket_size 64;
include /etc/nginx/conf.d/*.conf;
}


Теперь конфиг проекта

/etc/nginx/conf.d/site.conf

server {
listen 80;
server_name site.ru;
root   /srv/www/site;
index  index.php index.html index.htm;
access_log  /var/log/nginx/site.access.log;
error_log  /var/log/nginx/site.error.log;
location ~ \.php$ {
fastcgi_pass   127.0.0.1:10001;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  /srv/www/site/$fastcgi_script_name;
fastcgi_intercept_errors on;
include fastcgi_params;
}
}


Ставим php и модули(по мере надобности)

# aptitude install php5-fpm php5-cli php5-common php5-mysql php5-gd php5-curl php5-mcrypt php5-xcache php-pear


Создаём папки

# mkdir /var/log/php5
# mkdir /srv/www


Правим конфиги

/etc/php5/fpm/pool.d/site.conf

[site]
prefix = /srv/www/$pool
listen = 127.0.0.1:10001
listen.allowed_clients = 127.0.0.1
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
user = www-data
group = www-data
pm = dynamic
pm.max_children = 35
pm.start_servers = 5
pm.min_spare_servers = 2
pm.min_spare_servers = 2
pm.max_spare_servers = 8
pm.max_requests = 1000
pm.status_path = /status/php-fpm/$pool
request_terminate_timeout = 0
request_slowlog_timeout = 1m
slowlog = /var/log/php5/$pool.slow.log
catch_workers_output = yes

Отключаем уязвимость: http://forum.antichat.ru/thread222063-php-fpm.html
прописываем в /etc/php5/fpm/php.ini

cgi.fix_pathinfo=0


Ставим percona-server(форк движка mysql)

# aptitude install percona-server-server-5.5 percona-server-client-5.5 percona-server-common-5.5 percona-toolkit percona-xtrabackup


Для запуска демона не только на локалхосте

/etc/mysql/my.cnf

bind address = 0.0.0.0


Для входа под рутом без пароля

/root/.my.cnf

[client]
user=root
pass=pass


Рестартим всю эту байду, проверяем и на выходе имеем уеб-сервер для своих нужд.