Nginx — это веб-сервер и почтовый прокси-сервер, работающий на Unix-подобных операционных системах. Применяется в основном для статических сайтов.
Устанавливаем MYSQL
sudo apt-get install mysql-server
Устанавливаем Nginx
sudo apt-get install nginx sudo service nginx start
Устанавливаем PHP
sudo apt-get install php5-fpm sudo apt-get install php5-imagick
В файле php.ini меняем размер загружаемых файлов с стандартного 2М на 10М
sudo nano /etc/php5/fpm/php.ini upload_max_filesize = 2M
Нажимаем Control + X для закрытия и сохранения файла.
Устанавливаем Phpmyadmin
sudo apt-get install phpmyadmin
При установке опции apache or lighttpd должны быть отключены!
Пароль необходимо указать такой же, как и при установке MySQL.
Для завершения перезапускаем PHP командой
sudo service php5-fpm restart
Создаем папку и устанавливаем права доступа (имя example.com меняем на свои данные)
sudo mkdir /srv/www sudo chown -R YOURUSERNAME:www-data /srv/www sudo chmod -R 755 /srv/www mkdir /srv/www/example.com cd /srv/www/example.com mkdir logs nano logs/access.log nano logs/error.log mkdir public
Далее необходимо прописать настройки домена. Открываем файл example.com
sudo nano /etc/nginx/sites-available/example.com
и вставляем следующий ниже код:
server { server_name example.com 192.168.1.116; access_log /srv/www/example.com/logs/access.log; error_log /srv/www/example.com/logs/error.log; root /srv/www/example.com/public/; location / { index index.php index.html index.htm; try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /srv/www/example.com/public$fastcgi_script_name; } location /phpmyadmin { root /usr/share/; index index.php index.html index.htm; location ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; } location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /phpMyAdmin { rewrite ^/* /phpmyadmin last; } }
Набираем
sudo ln -s /etc/nginx/sites-available/yoursitename /etc/nginx/sites-enabled/yoursitename
и перезагружаем службу
sudo service nginx restart
В файл index.php вставляем строку < ?php phpinfo(); ?>
nano /srv/www/example.com/public/index.php < ?php phpinfo(); ?>
Нажимаем Control + X для сохранения и закрытия файла.
Web сервер доступен по адресу http://IP-адрес вашего web-сервера
Для записи файлов в папку необходимо поставить службу VSFTPD
sudo apt-get install vsftpd
В конфигурационный файл вносим следующие изменения
sudo nano /etc/vsftpd.conf
Изменяем значение с «anonymous_enable=YES» на «anonymous_enable=NO»
Активируем следующие опции:
local_enable=YES
write_enable=YES
local_umask=022
Сохраняем, закрываем и перезапускаем службу
sudo service vsftpd restart
Полезные команды NGNIX
# /etc/init.d/nginx start
# /etc/init.d/nginx stop
# /etc/init.d/nginx restart
# /etc/init.d/nginx condrestart
# /etc/init.d/nginx try-restart
# /etc/init.d/nginx force-reload
# /etc/init.d/nginx upgrade
# /etc/init.d/nginx reload
# /etc/init.d/nginx status
# /etc/init.d/nginx help
# /etc/init.d/nginx configtest
Стандартные порты и пути к файлам Nginx
/etc/nginx/ — директория содержащая файлы настроек Nginx сервера;
/etc/nginx/conf.d/ — директория содержащая файлы настроек SSL и виртуальных хостов (vhost);
/etc/nginx/nginx.conf — основной файл настроек;
/var/log/nginx/error.log — логи ошибок;
/var/log/nginx/access.log — логи доступа;
/usr/share/nginx/html/ — корневая директория сайта по умолчанию (document root);
TCP 80 — HTTP порт по умолчанию для Nginx;
TCP 443 — HTTPS порт по умолчанию для Nginx.