搞一个网站:在Ubuntu搭建LAMP建站环境

code-1839406_1280.jpg

关于 LAMP

LAMP,不是落地灯的意思,而是Linux+Apache+Mysql+PHP的一组黄金套餐,它们本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案。

本教程以Ubuntu 14.04 为例,以DigitalOcean为托管平台,带大家过一遍安装LAMP的步骤~

首先你要有一个锅……

最好要有一个干干净净的ubuntu系统,以及一个拥有管理员权限的账号。

购买与建立VPS服务器的过程就不赘述啦~

Step 1 倒入汤底: 安装 Apache

在Ubuntu中,我们经常会遇到老朋友 apt,帮我们从Ubuntu官方管理的菜市场里找到我们需要的配料。

现在,我们在命令行里输入以下代码:

sudo apt-get update
sudo apt-get install apache2

这时我们遇到了第二个老朋友 sudo 命令。有了它,我们就可以用root的身份来执行命令。 你可能需要输入root密码。

然后呢,你的Apache就装好啦。huh。

不放心的话,你可以在浏览器里输入自己服务器的ip地址:

http://your_server_IP_address

如果看到下面这张意义不明的默认页,就说明Apache装好啦:

default_apache.png

怎么才能知道自己服务器的 IP 呢?

通常来讲,你怎么会不知道呢?既然你都已经通过SSH登录了……

那好吧,你可以通过 iproute2 tools 以下方命令键入:

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

接着他就会告诉你,你的IP地址是多少。

Step 2 放老母鸡: 安装 MySQL 数据库

我们的网站服务器已经在奔跑了,但没有数据库,它也只能用来做一个静态的网站。

好,我们的老朋友apt又出现了:

sudo apt-get install mysql-server php5-mysql

Note: 这次我们不需要输入: sudo apt-get update 这个命令了,因为我们已经更新过自己的“菜单”,知道Ubuntu的“菜市场”里有啥了。

打回车后,这次命令行会让你设定 MySQL “root” 用户的密码。这是数据库最高权限的密码,所以要设的尽量复杂(大小写数字标点符号)

跑完这些后,我们的数据库就装上啦。接下来,我们需要告诉它,数据应该存放在哪里:

sudo mysql_install_db

安全很重要,所以我们要跑一坨安全程序的设置:

sudo mysql_secure_installation

回车后,你会被要求提供刚才设置的数据库最高权限的密码。它还会问你是不是要重设这个密码(为毛要重设啊),不要的话就打“n”,表示NO。

剩下的问题,只要打回车或n,表示不要。这样sample users and databases, disable remote root logins等等的预设安全问题都会被解除。

数据库就完事了。

Step 3 加香菇: 安装 PHP

接着同样使用apt来安装php的相关组件:

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

修改 dir.conf文件,让.php页面的优先级排序到最前面。

sudo nano /etc/apache2/mods-enabled/dir.conf

用nano编辑器打开后,这个文件长这样:

<IfModule mod_dir.c>
    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>

如果你要把php文件的优先级排在最前边,就这样改:

<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

安装你想要的 PHP 模块

一些情况下,光光安装了基本的PHP是不够的,你需要额外的盔甲。要添加php的模块,键入这个命令来搜索有哪些模块:

apt-cache search php5-

然后会出现:

php5-cgi - server-side, HTML-embedded scripting language (CGI binary)
php5-cli - command-line interpreter for the php5 scripting language
php5-common - Common files for packages built from the php5 source
php5-curl - CURL module for php5
php5-dbg - Debug symbols for PHP5
php5-dev - Files for PHP5 module development
php5-gd - GD module for php5
. . .

要知道它们是干嘛的,键入以下命令,或者自己Google:

apt-cache show package_name

比如,你想知道 php5-cli 模块是干嘛的,就键入:

apt-cache show php5-cli

它会告诉你:

. . .
SHA256: 91cfdbda65df65c9a4a5bd3478d6e7d3e92c53efcddf3436bbe9bbe27eca409d
Description-en: command-line interpreter for the php5 scripting language
 This package provides the /usr/bin/php5 command interpreter, useful for
 testing PHP scripts from a shell or performing general shell scripting tasks.
 .
 The following extensions are built in: bcmath bz2 calendar Core ctype date
 dba dom ereg exif fileinfo filter ftp gettext hash iconv libxml mbstring
 mhash openssl pcntl pcre Phar posix Reflection session shmop SimpleXML soap
 sockets SPL standard sysvmsg sysvsem sysvshm tokenizer wddx xml xmlreader
 xmlwriter zip zlib.
 .
 PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used
 open source general-purpose scripting language that is especially suited
 for web development and can be embedded into HTML.
Description-md5: f8450d3b28653dcf1a4615f3b1d4e347
Homepage: http://www.php.net/
. . .

如果你觉得不错,我就要 php5-cli 了,那就键入以下命令来安装

sudo apt-get install php5-cli

如果你要批量安装多个模块,用这个命令:

sudo apt-get install package1 package2 ...

至此,你的LAMP就基本完成了!新建一个php文件,看看能否用浏览器打开?

Step 4 尝一尝: 测试 PHP 文件能否打开

在 Ubuntu 14.04中,Apache的网站根目录通常是: /var/www/html/. 那我们在下面创建一个文件吧:

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

这个熟悉的命令会帮我们创建info.php这个空白的文件,我们在里面输入这个php代码:

<?php
phpinfo();
?>

然后按照上文提到过的快捷键,老规矩保存好。

打开你的浏览器,输入:(记得替换成自己服务器的ip)

http://your_server_IP_address/info.php

如果一切正常,看上去是这样的:

default_php.png

好了,测试完毕,如果你要删除刚刚的测试文件,使用这个命令:

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

完成!

参考资料:How To Install Linux, Apache, MySQL, PHP (LAMP) stack on Ubuntu 14.04
发表新评论