Ubuntu 安装 Nginx + PHP + MySQL

Nginx 1.8.0:
sudo add-apt-repository ppa:nginx/stable 
sudo apt-get update
sudo apt-get install nginx

sudo systemctl start nginx
sudo systemctl enable nginx

如出现 Apache 卸载不干净的话请执行:
sudo apt-get purge apache2*

Ubuntu 16.04:
sudo apt-get install php-fpm
sudo apt-get install php-dev
sudo apt-get install curl libcurl3 libcurl3-dev
sudo apt-get install php-curl php-gd php-intl php-ldap php-mcrypt php-mysqlnd php-odbc php-mbstring php-memcached php-xmlrpc php-xdebug

Old Ubuntu:
[
PHP 7:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.0 php7.0-fpm php7.0-dev
sudo apt-get install curl libcurl3 libcurl3-dev php7.0-curl
sudo apt-get install php7.0-gd php7.0-intl php7.0-ldap php7.0-mcrypt php7.0-mysql php7.0-odbc  php7.0-opcache php7.0-mbstring php7.0-zip

PHP 5:
sudo apt-get install php5-fpm
sudo apt-get install php5-dev
sudo apt-get install libjpeg*
sudo apt-get install curl libcurl3 libcurl3-dev php5-curl imagemagick php5-imagick
sudo apt-get install php5-gd php5-intl php5-ldap php5-mcrypt php5-mysqlnd php5-odbc php5-memcache php5-memcached php5-xmlrpc php5-xdebug
]

16.04:
sudo vi /etc/php/7.0/fpm/conf.d/20-xdebug.ini
old:
sudo vi /etc/php5/fpm/conf.d/20-xdebug.ini
参考Fedora

16.04:
sudo systemctl start php7.0-fpm
sudo systemctl enable php7.0-fpm
old:
sudo systemctl start php5-fpm
sudo systemctl enable php5-fpm


MySQL:
sudo apt-get install mysql-server mysql-client


安全性设置(请参考之前的文章 CentOS 7 安装 Nginx + PHP + MySQL,下面仅注明不同点):
9:
PHP 7:
sudo vi /etc/php/7.0/fpm/php.ini
sudo vi /etc/php/7.0/cli/php.ini
PHP 5:
sudo vi /etc/php5/fpm/php.ini
sudo vi /etc/php5/cli/php.ini

10: 使用 socket 方式连接 Nginx 优化 php-fpm 性能
PHP 7:
sudo vi /etc/php/7.0/fpm/pool.d/www.conf
old:
sudo vi /etc/php-fpm.d/www.conf
listen = /var/run/php5-fpm.sock 不需修改
用户 www-data 不需修改

11:
设置最大上传文件大小:
sudo vi /etc/php5/fpm/php.ini
sudo vi /etc/php5/cli/php.ini

12: 让 Nginx 处理 PHP 文件
sudo mv /etc/nginx/sites-enabled/default ~/
sudo vi /etc/nginx/conf.d/default.conf
7.0:
fastcgi_pass   unix:/run/php/php7.0-fpm.sock
5.x:
fastcgi_pass   unix:/var/run/php5-fpm.sock;

14:
sudo vi /etc/php5/fpm/php.ini
sudo vi /etc/php5/cli/php.ini

2:
sudo chown nobody /var/lib/php/sessions/
sudo chmod -R 777 /var/lib/php/sessions/

9:限制 PHP 脚本的文件访问范围,防止一个站点被攻陷后殃及整个服务器:
PHP 7:
sudo vi /etc/php/7.0/fpm/php.ini
5.x:
sudo vi /etc/php5/fpm/php.ini

10:禁用某些 PHP 内置函数:
PHP 7:
sudo vi /etc/php/7.0/fpm/php.ini
sudo vi /etc/php/7.0/cli/php.ini
PHP 5:
sudo vi /etc/php5/fpm/php.ini
sudo vi /etc/php5/cli/php.ini

11:如果是本地工作机器,可以禁止外部ssh登录
sudo ufw default deny
sudo ufw enable