Debian 7 (Wheezy)安装LEMP(Nginx MySQL PHP)

安装前提



在安装web应用套件之前,执行如下命令来确保你的系统软件包数据库是最新的,且已安装的软件更新为最新版本

  1. sudo apt-get update
  2. sudo apt-get upgrade

安装Nginx Web服务器



有两种切实可行,且比较受欢迎安装Nginx的方式。这里用的方法是从Debian官方维护的软件仓库获取Nginx软件包,官方提供一个稳定版本和测试版本的Nginx。另一个可选的安装方式是从Debian Backports项目获取,Backports提供的软件包比Debian官方的版本新,但Backports可能在维护和支持上不如Debian官方。
执行如下命令安装Nginx

  1. sudo apt-get install nginx

配置Nginx虚拟主机



你需要配置server块来配置虚拟主机。由于使用了Debian官方维护的Nginx,我们在这个文件创建虚拟主机配置/etc/nginx/sites-available/example.com:
/etc/nginx/sites-available/example.com

  1. server {
  2.     listen   80;
  3.     server_name www.example.com example.com;
  4.     access_log /srv/www/example.com/logs/access.log;
  5.     error_log /srv/www/example.com/logs/error.log;
  6.  
  7.     location / {
  8.         root   /srv/www/example.com/public_html;
  9.         index  index.html index.htm;
  10.     }
  11. }

创建与以上配置文件相关的目录(确保example.com域名替换为你的)

  1. sudo mkdir -p /srv/www/example.com/{public_html,logs}

执行以下命令激活虚拟主机,以及重启web服务器

  1. sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled
  2. sudo /etc/init.d/nginx restart

想要禁用刚才的网站,仅仅需要输入如下命令来删除软链接。

  1. sudo rm /etc/nginx/sites-enabled/example.com
  2. sudo /etc/init.d/nginx restart

配置PHP以FastCGI运行



为了配置PHP程序,你需要按照如下的方法来使nginx能正常处理php页面。在配置之前,执行如下命令来安装所需的安装包:

  1. sudo apt-get install php5-cli php5-cgi spawn-fcgi php-pear

依顺序执行如下命令来下载PHP-FastCGI封装脚本,配置控制进程的init脚本,首次启动及设置开机启动:

  1. cd /opt/
  2. sudo wget -O php-fastcgi-deb.sh http://www.linode.com/docs/assets/1548-php-fastcgi-deb.sh
  3. sudo mv /opt/php-fastcgi-deb.sh /usr/bin/php-fastcgi
  4. sudo chmod +x /usr/bin/php-fastcgi
  5. sudo wget -O init-php-fastcgi-deb.sh http://www.linode.com/docs/assets/1549-init-php-fastcgi-deb.sh
  6. sudo mv /opt/init-php-fastcgi-deb.sh /etc/init.d/php-fastcgi
  7. sudo chmod +x /etc/init.d/php-fastcgi
  8. sudo /etc/init.d/php-fastcgi start
  9. sudo update-rc.d php-fastcgi defaults

以下是一个nginx虚拟主机示例配置。按你的要求调整路径及替换example.com域名
/etc/nginx/sites-available/example.com:

  1. server {
  2.     server_name www.example.com example.com;
  3.     access_log /srv/www/example.com/logs/access.log;
  4.     error_log /srv/www/example.com/logs/error.log;
  5.     root /srv/www/example.com/public_html;
  6.  
  7.     location / {
  8.         index index.html index.htm index.php;
  9.     }

另外,还需要确保location ~ \.php$ { }代码块在此虚拟主机配置来处理php请求:

  1. location ~ \.php$ {
  2.     include /etc/nginx/fastcgi_params;
  3.     fastcgi_pass  127.0.0.1:9000;
  4.     fastcgi_index index.php;
  5.     fastcgi_param SCRIPT_FILENAME /srv/www/example.com/public_html$fastcgi_script_name;
  6. }

当修改配置完成后,重启Nginx:

  1. /etc/init.d/nginx restart

安装MySQL



1.执行如下命令来安装MySQL server包及PHP支持MySQL的包

  1. sudo apt-get install mysql-server php5-mysql

2.设置root密码,尽量设置一个复杂的密码以保证安全。
3.执行如下命令来加固MySQL

  1. sudo mysql_secure_installation

4.如果以后想重置root密码,执行如下命令:

  1. dpkg-reconfigure mysql-server-5.0

5.重启php-fastcgi以让php支持mysql

  1. sudo /etc/init.d/php-fastcgi restart
标签:DebianPHPNginxMySQL 发布于:2019-11-21 20:11:33