原文作者:Matthew Cone 邮箱:docs@linode.com
原文地址:http://library.linode.com/lamp-guides/ubuntu-12.04-precise-pangolin
翻译人:Shally (倾绝) 邮箱:649895435@qq.com
翻译日期:2014年3月
说明:在Ubuntu 12.04LST(精确的穿山甲)上配置由Apache、MySQL、PHP组成的LAMP。
关键字:ubuntu lamp服务器, ubuntu12.04 lamp, lucid lamp, ubuntu网站服务, ubuntu lucid
这个指南为在Ubuntu 12.04(精确的穿山甲)系统上安装完整的LAMP提供了详细的配置步骤。Ubuntu 12.04是Ubuntu操作系统于2012年发布的LTS(longterm support长期支持)版本,并且预计将能够支持安装更新到2017年4月。
在本指南中,你将学会怎样配置Apache、MySQL和PHP,如果你不需要MySQL或者PHP,就请不要去安装它们。
目录:
1. 设置主机名
2. 安装并且配置Apache Web Server
* 配置Name-based虚拟主机
3. 安装并且配置 MySQL Database Server
* 安装MySQL
* 配置MySQL并且建立Database
4. 安装配置PHP
5. 更多信息
设置主机名
在你开始依照这个安装指南描述的步骤安装和配置组件之前,请先确认你已经按我们的说明设置你的主机名。运行以下命令确认你的主机名已被正确设置:
hostname
hostname –f
第一个命令显示你的短主机名,第二个命令则显示你的完全限定域名(FQDN)。
安装并且配置Apache WebServer
Apache web server是为网页提供网络服务的一个热门选择。在过去几年里,相继出现了许多网络服务器,但是对大多数应用,Apache 仍然是我们建议的一个最好的选择。请确认你的软件源并且执行以下命令对已安装程序进行更新:
apt-get update
apt-get upgrade -show-upgraded
运行以下命令在Ubuntu系统上安装Apache web server(2.x系列)的最新版本:
apt-get install apache2
编辑主要的Apache配置文件来调整资源的使用设置。如下图的展示的设置对Linode 1GB就是一个很好的开始。
文件:/etc/apache2/apache2.conf
KeepAliveOff
...
<IfModulempm_prefork_module>
StartServers2
MinSpareServers6
MaxSpareServers12
MaxClients80
MaxRequestsPerChild3000
</IfModule>
现在,我们将配置虚拟主机,这样我们就可以托管多个域(或子域)的服务器。这些网站可以根据你的喜好由单个用户或者不同用户进行控制。
配置name-based虚拟主机
这里有许多不同的方法来设置虚拟主机,但我们建议下面这种方法。在默认情况下,Apache监听提供给它的所有可用IP地址。
首先,为你要设置的每一个虚拟主机在 /etc/apache2/sites-available/目录下创建一个文件。为你要提供虚拟主机域名的每个文件命名。下面假定为域名“example.com”和“example.org”进行配置。
文件:/etc/apache2/sites-available/example.com.conf
<VirtualHost*:80>
ServerAdmin webmaster@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot/srv/www/example.com/public_html/
ErrorLog/srv/www/example.com/logs/error.log
CustomLog/srv/www/example.com/logs/access.log combined
</VirtualHost>
文件:/etc/apache2/sites-available/example.org.conf
<VirtualHost*:80>
ServerAdmin webmaster@example.org
ServerName example.org
ServerAlias www.example.org
DocumentRoot/srv/www/example.org/public_html/
ErrorLog/srv/www/example.org/logs/error.log
CustomLog/srv/www/example.org/logs/access.log combined
</VirtualHost>
关于这个配置实例的注意事项:
- 所有托管网站的文件都放在/srv/www 这个目录下。当然,如果你要把它们存在其他位置,你也可以将这些目录符号链接到其他相应位置。
- 建议用错误日志(ErrorLog)和用户日志(CustomLog)来更具有条理的记录日志,但不是必须的。如果它们被定义(如上图所示),那么日志目录必须在重新启动Apache之前被创建。
在你使用上面的配置之前,你需要创建一个指定的目录。就以上配置而言,你可以使用以下命令。
mkdir -p /srv/www/example.com/public_html
mkdir /srv/www/example.com/logs
mkdir -p /srv/www/example.org/public_html
mkdir /srv/www/example.org/logs
当你设置完虚拟主机之后,运行以下命令:
a2ensite example.com.conf
a2ensite example.org.conf
这个命令将你的虚拟主机文件从sites-available符号链接到sites-enabled目录下。最后,在你访问网站之前,必须执行以下命令重新载入Apache:
service apache2 reload
假设你已经配置了DNS使得你的域指向你的Linode的IP地址,现在虚拟主机可以为你的域工作了。
如果想要关闭example.com这个网站,你可是使用以下命令来实现:
a2dissite example.com.conf
该a2dissite命令是a2ensite命令的逆。在启用、禁止或者修改你的Apache配置的任何一部分之后,你必须要使用/etc/init.d/apache2 reload命令重新载入Apache配置。你可以创建许多虚拟主机文件来支持你要装在的Linode网域。
安装并且配置 MySQL DatabaseServer
MySQL是一个关系型数据库管理系统(RDBMS),是在当代web开发中很受欢迎的组件。它被用来为许多流行应用存储数据,包括WorldPress和Drupal.
安装 MySQL
第一步是用以下命令来安装mysql-server包:
apt-get install mysql-server
在安装过程中你将被提示输入密码。选择安全的密码 (使用字母,数字,以及非字母数字字符)并且记录下来以供日后使用。
此时MySQL应该准备好配置和运行了。你应该不需要去更改配置文件,注意,配置文件位于/etc/mysql/my.cnf以供日后使用。
配置MySQL并且建立 Databases
在安装 MySQL之后,推荐你运行mysql_secure_installation命令,这是一个让MySQL更安全的程序。运行mysql_secure_installation时,你将会有一个机会改变MySQL的root密码、删除匿名用户账户、禁用本地主机以外的root登陆,以及删除测试数据,推荐你选择“yes”。如果你被提示重新加载权限表(privilege tables),选择“yes”。使用以下命令去执行程序:
mysql_secure_installation
接下来,我们将创建数据库并且授予用户使用数据库的权限。首先,登陆MySQL:
mysql -u root -p
输入MySQL的root密码,你将会看到一个MySQL提示,你可以用SQL语句来与数据库进行交互。
为了创建数据库并且在数据库上授予权限,可以执行以下命令。注意,在句末的分号(;)对于命令结束是关键。你的命令必须是这样的:
create database lollipop;
grant all on lollipop.* to 'foreman' identified by '5t1ck';
flush privileges;
对于这个例子,‘lollipop’是数据库的名字,‘foreman’是用户名,‘5t1ck’是密码。注意,数据库用户名与密码只能被用于连接到数据库脚本。并且数据库用户的账户名不必是(操作)系统的实际用户的账户名。
当你已经成功完成配置MySQL,你现在可以把这些数据凭据交给你的用户。你可以执行以下命令来退出MySQL数据库管理工具。
quit
安装了Apache和MySQL后,你现在要开始继续去安装PHP来为你的网页提供脚本支持。
安装并且配置PHP
PHP使得用你自己的脚本和流行的网页开发框架制作动态和交互式网页成为可能。此外,许多流行的网页应用,例如WorldPress,是用PHP编写的。如果你想要能够用PHP开发你的网站,那你就必须安装它。
Ubuntu包含从终端安装PHP的包,运行以下命令:
apt-get install php5 php-pear
一旦安装 PHP5,我们需要调节/etc/php5/apache2/php.ini配置文件,使它更好的描述错误、日志,以及具有更好性能。如果你不熟悉PHP配置,这些修改提供了良好的起点。
请确定以下值的设置,以及相关行的注释(注释行以分号开始):
文件摘录:/etc/php5/apache2/php.ini
max_execution_time=30
memory_limit=128M
error_reporting=E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
display_errors=Off
log_errors=On
error_log=/var/log/php/error.log
register_globals=Off
max_input_time=30
修改PHP配置文件以后,执行下面的命令重新启动Apache:
service apache2 reload
如果你要PHP支持MySQL,那么你必须执行以下命令安装php-5mysql包:
apt-get install php5-mysql
(推荐)安装php5-suhosin包可以为PHP5应用程序提供额外的安全,请执行以下程序:
apt-get install php5-suhosin
重启Apache确认所有程序正确安装:
service apache2 reload
祝贺你!你现在已经建立并且配置了一个LAMP系统.
这个指南许可: Creative Commons Attribution-NoDerivs 3.0 United StatesLicense.
最后编辑日期2013.10.3 星期三 Matthew Cone