Ubuntu 配置 Apache, MySQL, PHP 以及 phpMyAdmin 过程记录

在 Ubuntu Server 的纯命令行界面下成功配置好了 LAMP 环境,记录过程,供有相同需求的朋友们参考。

Apache

安装

$ sudo apt-get install apache2

装好后,配置文件应该位于/etc/apache2中,默认情况下无需修改即可使用。默认的网站目录为/var/www/

启动 Apache 的方法:

$ sudo /etc/init.d/apache2 start

重启 Apache:

$ sudo /etc/init.d/apache2 restart

停止 Apache:

$ sudo /etc/init.d/apache2 stop

上述命令也可以写成这种形式(以启动为例):

$ sudo service apache2 start

测试

装好并启动 Apache 服务后,本地服务器应该就可以用了。可以利用curl访问 localhost 来测试:

$ curl localhost

Apache 的错误日志文件默认为/var/log/apache2/error.log

其他

启动的时候可能会出现如下警告:

apache2: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

说明你没有指定ServerName。如果想去掉这个错误,可以修改/etc/apache2/apache2.conf文件:

$ sudo vi /etc/apache2/apache2.conf

添加如下行:

ServerName localhost

PHP

安装 PHP

同样使用apt-get命令安装 PHP:

$ sudo apt-get install php5

执行之后,PHP 应该就已经部署完毕了。可以使用phpinfo()函数来测试 PHP 是否已经就绪:

$ sudo vi /var/www/phpinfo.php

在文件里输入:

<?php phpinfo(); ?>

然后curl localhost/phpinfo.php来查看。

安装其他 PHP 模块

$ sudo apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

MySQL

$ sudo apt-get install mysql-server

安装过程中需要设定 root 账户的密码。至此,LAMP 环境已经配好。

phpMyAdmin

安装

首先执行:

$ sudo apt-get install phpmyadmin

安装过程比较长,会有几个选项,依次如下:

(1)选择服务器软件。这里选择刚刚安装的 Apache2。

(2)选择手动设定。

(3)输入之前安装 MySQL 时设的 MySQL root 账户的密码。

(4)设定 phpMyAdmin 的登录密码。

注意,phpMyAdmin 的配置文件为:/etc/phpmyadmin/config.inc.php

包含 pma 的配置文件到 Apache

安装后,还不能立即使用 phpMyAdmin,因为它不在网站目录下。为了正常使用,只需把 phpMyAdmin 的配置文件包含到 Apache 的配置中。编辑apache2.conf

$ sudo vi /etc/apache2/apache2.conf

在文件中添加如下行:

Include /etc/phpmyadmin/apache.conf

重启服务器:

$ sudo service apache2 restart

至此,你就可以通过yourdomain/phpmyadmin来访问 phpMyAdmin 了。

mcrypt 模块丢失的错误

一个 bug 可能导致访问 phpMyAdmin 时出现 mcrypt 模块丢失的错误。如果遇到,则可以采用下面的办法修复:

$ sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/
$ sudo php5enmod mcrypt
$ sudo service apache2 restart

全局禁用 Index

Index 就是访问一个不存在 index.html、index.php 等文件的目录时服务器列出的文件列表,这样会对用户展示文件结构,如果想禁用,可以修改 Apache 的配置文件:

$ sudo vi /etc/apache2/apache2.conf

找到并修改为

<Directory /var/www/>
        Options -Indexes
        Options FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>
本文作者为,最后修订于

讨论