如何在Ubuntu 12.04上安装Linux,nginx,MySQL,PHP(LEMP)

LEMP是一组开放源代码软件,用于启动和运行Web服务器。首字母缩写代表Linux,nginx(发音为Engine x),MySQL和PHP。本教程解释如何安装所需的repos来下载nginx和php-fpm,如何

关于Lemp

LEMP是一组开放源代码软件,用于启动和运行Web服务器。首字母缩写代表Linux,nginx(发音为Engine x),MySQL和PHP。由于服务器已经运行Ubuntu,所以linux部分被处理。这里是如何安装其余的。

建立

本教程中的步骤要求用户具有root权限。你可以看到如何设置了在初始服务器设置教程第3步和4。

第一步更新Apt-Get

在本教程中,我们将使用apt-get作为所有服务器程序的安装程序。 2012年5月8日,发现了一个严重的php漏洞,重要的是我们下载所有最新的补丁软件来保护虚拟私人服务器。 让我们做一个彻底的更新。
sudo apt-get update

第二步 - 安装MySQL

MySQL是一个强大的数据库管理系统,用于组织和检索数据 要安装MySQL,请打开终端并键入以下命令:
sudo apt-get install mysql-server php5-mysql
在安装过程中,MySQL会要求您设置root密码。如果你错过了在程序安装时设置密码的机会,以后很容易从MySQL shell中设置密码。 一旦你安装了MySQL,我们应该用这个命令激活它:
sudo mysql_install_db
通过运行MySQL设置脚本完成:
sudo /usr/bin/mysql_secure_installation
提示将要求您输入当前的root密码。 输入。
Enter current password for root (enter for none): 
OK, successfully used password, moving on...
然后提示将询问您是否要更改root密码。继续,选择N并继续下一步。 这是最简单只是说是的所有选项。最后,MySQL将重新加载和实现新的更改。
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y                                            
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y
... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...
一旦你完成了,你可以通过安装PHP完成。

第三步 - 安装nginx

一旦MySQL设置完成,我们可以继续在VPS上安装nginx。
echo "deb http://ppa.launchpad.net/nginx/stable/ubuntu $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/nginx-stable.list
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C300EE8C
sudo apt-get update
sudo apt-get install nginx
nginx不会自己启动。要运行nginx,请输入:
sudo service nginx start
您可以通过将浏览器定向到您的IP地址来确认nginx已安装了您的Web服务器。 您可以运行以下命令来显示您的VPS的IP地址。
ifconfig eth0 | grep inet | awk '{ print $2 }'

第四步安装PHP

要安装PHP-FPM,请打开终端并键入这些命令。我们将在下一步中配置nginx和php的详细信息:
sudo apt-get install php5-fpm

第五步 - 配置php

我们需要在php配置中做一个小的改变。打开php.ini:
 sudo nano /etc/php5/fpm/php.ini
找到行cgi.fix_pathinfo = 1,并将1更改为0。
cgi.fix_pathinfo=0
如果这个数字保持为1,php解释器将尽最大努力来处理尽可能接近所请求的文件的文件。这是一种可能的安全风险。如果此数字设置为0,相反,解释器将只处理确切的文件路径 - 一个更安全的选择。保存并退出。我们需要在php5-fpm配置中进行另一个小的更改。打开www.conf:
 sudo nano /etc/php5/fpm/pool.d/www.conf
找到行,listen = 127.0.0.1:9000,并将127.0.0.1:9000更改为/var/run/php5-fpm.sock。
listen = /var/run/php5-fpm.sock
保存并退出。 重新启动php-fpm:
sudo service php5-fpm restart

第六步 - 配置nginx

打开默认虚拟主机文件。
sudo nano /etc/nginx/sites-available/default
配置应包括以下更改(更改的详细信息在配置信息下): 更新:较新的Ubuntu版本创建一个默认名称,而不是'WWW'“HTML”目录。如果/ usr / share / nginx / www不存在,它可能称为html。请确保正确更新配置。
 [...]
server {
        listen   80;
     

        root /usr/share/nginx/www;
        index index.php index.html index.htm;

        server_name example.com;

        location / {
                try_files $uri $uri/ /index.html;
        }

        error_page 404 /404.html;

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
              root /usr/share/nginx/www;
        }

        # pass the PHP scripts to FastCGI server listening on the php-fpm socket
        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
                
        }

}
[...]
以下是更改的详细信息:
  • 将index.php添加到索引行。
  • 将server_name从本地主机更改为您的域名或IP地址(替换配置中的example.com)
  • 更改“location〜\ .php $ {”部分中的正确行
保存并退出

第七步 - 创建一个php信息页面

我们可以快速看到新的php配置的所有细节。 要进行设置,首先创建一个新文件:
sudo nano /usr/share/nginx/www/info.php
在以下行中添加:
<?php
phpinfo();
?>
然后保存并退出。 重新启动nginx
sudo service nginx restart
您可以访问http://youripaddress/info.php查看nginx和php-fpm配置详细信息 您的LEMP现在在您的虚拟专用服务器上设置和配置。

查看更多

LEMP安装后,可以安装WordPress ,继续使用MySQL(做多一个基本的MySQL教程 ),或者安装的phpMyAdmin创建一个SSL证书 ,或安装FTP服务器
作者Etel Sverdlov