在Ubuntu 14.04上安装LAMP stack

  LAMP stack指的是一组开源程序,用于服务器host动态网页和网页app。具体来说,LAMP使用Linux操作系统和Apache Web服务器,数据存储在MySQL数据库中,动态内容由PHP处理。

0. 更新apt

  以下的安装都使用了apt——Ubuntu的package manager来进行,首先需要进行一下updata:

sudo apt-get update

1. 安装Apache

  Apache是目前最流行Web服务器,在Ubuntu下可以是同apt来安装Apache:

sudo apt-get install apache2

  安装完成后,就可以在浏览器里输入服务器IP地址http://your_server_IP_address ,访问默认Web页面了,如图1所示:

图1

图1

  如果不知道IP地址,可以使用如下命令查看:

ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

2. 安装MySQL

  站点的数据存储在数据库中,MySQL是一个数据库管理系统,管理并提供数据库的接入。MySQL同样可以使用apt安装:

sudo apt-get install mysql-server php5-mysql

  安装完成后,需要让MySQL建立数据库文件结构:
sudo mysql_install_db

  然后,可以运行一个自带的安全配置脚本,移除一些危险的默认设置:
sudo mysql_secure_installation

 运行上面脚本的时候,首先会询问是否修改密码,可以根据需要选择;其余选项可以直接按回车接受默认值。

3. 安装PHP

  PHP通过处理代码来展示动态内容,它可以运行脚本,连接MySQL数据库并从中获取信息,并将处理后的内容交给Web服务器进行展示。依旧可以使用apt来安装PHP:

sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt

  当用户向服务器请求目录时,Apache会首先查找index.html这个文件,我们需要进行额外设置,来让服务器优先选择PHP文件,也就是让Apache优先查找index.php。使用root权限编辑dir.conf文件:
sudo nano /etc/apache2/mods-enabled/dir.conf

这个的文件内容如下:
<IfModule mod_dir.c>
    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>

DirectoryIndex后文件名的顺序代表查找的优先级,其中index.php位于index.html之后,将其修改为:
<IfModule mod_dir.c>
    DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>

  修改完成后,按CTRL-X,再按Y,回车确认保存,然后重启Apache即可:
sudo service apache2 restart

4. 测试PHP

  现在通过一个简单的PHP脚本来测试PHP是否已经正常工作。在/var/www/html/路径下新建一个info.php文件:

sudo nano /var/www/html/info.php

在info.php中键入:
<?php
phpinfo();
?>

关闭并保存文件后,使用浏览器访问http://your_server_IP_address/info.php ,应该可以看到如图2所示的页面:

图2

图2

这个页面给出了关于服务器的一些信息,可以用于debug和确认配置,之后可以将info.php文件删除,以免将信息暴露给别人:

sudo rm /var/www/html/info.php