在 Ubuntu 14.10/14.04/13.10 上安装 LEMP 服务和 phpMyAdmin

在 Ubuntu 14.10/14.04/13.10 上安装 LEMP 服务和 phpMyAdmin

LEMP是一个操作系统和几个开源软件包的合称。缩写LEMP来自 Linux,Nginx(发音是 engine-x)HTTP服务器, MySQL数据库,和 PHP/ Perl/ Python的首字母。

在这篇教程里,让我们看一下如何在 Ubuntu 14.10 上安装 Nginx,MySQL 或 MariaDB,PHP 和 phpMyAdmin。

安装Nginx

Nginx (发音是engine-x)是一个免费的、开源的、高性能HTTP服务器和反向代理,也可以用作IMAP/POP3代理服务器,它是由Igor Sysoev开发。

要安装Nginx,在你的终端里输入下面的命令:

注意:如果你的系统里已经安装了apache2,先卸载掉以避免冲突。要卸载apache,运行下面的命令:

  1. sudo apt-get purge apache2*
  2. sudo apt-get autoremove -y

现在,用下面的命令安装nginx:

  1. sudo apt-get install nginx

用下面的命令启用Nginx服务:

  1. sudo service nginx start

测试 nginx

打开你的浏览器访问http://IP地址/或者http://localhost/。将可以看到类似下面的截图。

 在 Ubuntu 14.10/14.04/13.10 上安装 LEMP 服务和 phpMyAdmin

配置 Nginx

用任意文本编辑器打开文件/etc/nginx/nginx.conf

  1. sudo nano /etc/nginx/nginx.conf

设置 worker_processes(例如,你系统里CPU数目)。查看CPU数目,可以使用命令“lscpu”。在我这里是“1”。所以我把这个值设为1。

  1. worker_processes 1;

重启 Nginx 服务:

  1. sudo service nginx restart

默认虚拟主机(服务器模块)定义在文件/etc/nginx/sites-available/default里。

用任意文本编辑器打开文件/etc/nginx/sites-available/default。

  1. sudo nano /etc/nginx/sites-available/default

在Server区域里,按如下设置服务器FQDN或IP地址。确保你增加了index.php这一行。

[...]
server {
      listen 80 default_server;
      listen [::]:80 default_server ipv6only=on;
      root /usr/share/nginx/html;
      index index.php index.html index.htm;
      # Make site accessible from http://localhost/
      server_name server.unixmen.local;
[...]

这里面

  • listen 80; –> 监听ipv4端口
  • listen [::]:80 default_server ipv6only=on; –> 监听ipv6宽口
  • root /usr/share/nginx/html; –> 文件根目录
  • server_name server.unixmen.local; –> 服务器FQDN

现在,向下滚动找到区域#location ~ .php$。去掉注释并按如下修改:

location ~ \.php$ {
         try_files $uri =404;   ---------> Add this line
         fastcgi_split_path_info ^(.+\.php)(/.+)$;
         #       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
         #
         #       # With php5-cgi alone:
         #       fastcgi_pass 127.0.0.1:9000;
         #       # With php5-fpm:
         fastcgi_pass unix:/var/run/php5-fpm.sock;
         fastcgi_index index.php;
         include fastcgi.conf;
    }

这里面,我增加了额外一行‘try_files $uri =404;’用于避免0day漏洞。

保存文件并退出。

测试 nginx 配置

使用下面的命令测试nginx配置是否存在语法错误:

  1. sudo nginx -t

典型输出:

  1. nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
  2. nginx: configuration file /etc/nginx/nginx.conf test is successful

最后重启nginx服务

  1. sudo service nginx restart

相关推荐