千家信息网

ubuntu下LAMP环境的详细安装教程

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇内容介绍了"ubuntu下LAMP环境的详细安装教程 "的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所
千家信息网最后更新 2026年11月01日ubuntu下LAMP环境的详细安装教程

本篇内容介绍了"ubuntu下LAMP环境的详细安装教程 "的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

LAMP的概念:

Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。

安装LAMP就已经安装了 网页服务器 数据库 Perl/PHP/Python语音环境。

如果你是安装到本机上测试的话,最好确保hosts的内容为这样

username@ubuntu:~$ cat /etc/hosts127.0.0.1       localhost

安装

安装LAMP

套件一次性安装

sudo tasksel

用空格选中LAMP,回车即可。(不过要小心别修改其他的选项,否则会安装或删除该服务!)

仔细手动安装法(最小组件)

sudo apt-get install apache2 php5-mysql libapache2-mod-php5 mysql-server

有些是因为依赖关系会自动安装的,但是为了保险,所以多打了一些。开始安装时sudo会问您密码(只是有可能),这是系统管理员的密码。安装途中MySQL要求设定账户有密码,这是与操作系统没关系的账户与密码。

图形安装法

在新立得软件包管理器中选择 编辑--使用任务分组标记软件包

在打开的窗口中 勾选 LAMP SERVER 然后确定。

在主窗口中 点击绿色的对号 应用 按钮

好了 。接下来就是等待...等待新立得 自动下载安装完。

注意: 安装途中MySQL要求设定账户有密码,这是与操作系统没关系的账户与密码。

打开 http://localhost 或 http://127.0.0.1

图形化管理软件(可选)

安装webmin

这是一个系统管理软件,管理包含LAMP组件在内的大部分系统服务。同时能进行安装、进程管理等多种系统功能。

先到webmin官方下载软件 在该软件包存放位置下,打开终端。(你也可以用命令切换到该位置)

sudo dpkg -i 软件包名(用Tab可以少输点字)

如果提示缺少依赖,那差什么就装什么

访问地址(注意是加密安全链接):https://127.0.0.1:10000

安装phpmyadmin

这是一个数据库管理软件,管理mysql.

其实这也是个安全隐患,建议通过openssh来管理服务器。

方案一:终端中运行命令 (不推荐)

sudo apt-get install phpmyadmin

方案二:

强烈建议不要从源里安装
在phpmyadmin官网上下载软件包,解压缩到本地目录/var/www/phpmyadmin
tips:如果你请直接解压到/var/www/phpmyadmin,如果不存在phpmyadmin,请自行创建
在终端下执行

sudo cp /var/www/phpmyadmin/config.sample.inc.php /var/www/phpmyadmin/config.inc.php
sudo gedit /var/www/phpmyadmin/config.inc.php

找到"blowfish_secret"在后面填上任意字母

$cfg['Servers'][$i]['auth_type']='cookie';$cfg['Servers'][$i]['host']='localhost';$cfg['Servers'][$i]['connect_type']='tcp';$cfg['Servers'][$i]['compress']='false';$cfg['Servers'][$i]['extension']='mysql';

保存,退出
安装php5-mcrypt

sudo apt-get install php5-mcrypt

编辑php配置文件

sudo gedit /etc/php5/apache2/php.ini

在extension下面加上(任何独立一行就行)

extension=php_mcrypt.so (原来的php5-mcrypt.so无效)

保存,重启apache2

sudo /etc/init.d/apache2 restart

在浏览器里输入http://localhost/phpmyadmin

注:如果进入phpmyadmin出现配置文件引用失败则删除刚自己添加的

$cfg['Servers'][$i]['auth_type']='cookie';$cfg['Servers'][$i]['host']='localhost';$cfg['Servers'][$i]['connect_type']='tcp';$cfg['Servers'][$i]['compress']='false';$cfg['Servers'][$i]['extension']='mysql';

保存,退出
然后再重启apache2

sudo /etc/init.d/apache2 restart

在浏览器里输入http://localhost/phpmyadmin

配置文件路径

1>apache 的配置文件路径 /etc/apache2/apache2.conf

2>apache 网站字符编码配置路径 /etc/apache2/conf.d/charset

3>php.ini 路径 /etc/php5/apache2/php.ini

4>mysql配置文件 路径 /etc/mysql/my.cnf 一般不要使用,尤其是新手

5>phpmyadmin配置文件路径 /etc/phpmyadmin/apache.conf

6>默认网站根目录 /var/www

常用命令

1.重启apache

sudo /etc/init.d/apache2 restart

2.重启mysql

sudo /etc/init.d/mysql restart

配置apache

1.更改默认字符集
终端中使用命令

sudo nano /etc/apache2/conf.d/charset

将其中的

# AddDefaultCharset

的井号去掉,后面字段改成UTF-8(如果您的网站是这样了话)

AddDefaultCharset     UTF-8

中间的空格数并不重要,但一定要有。

2.添加支持文件类型(一般不需要),与网站地址(需要)

终端中使用命令

sudo nano /etc/apache2/apache2.conf

在配置文件最后面加入下面几行:

添加文件类型支持 (注:如果无法在html中解析php的语句,添加下面语句。网上好多都是说直接编辑httpd.conf,但是ubuntu版本的apache2没有这个文件,你可以直接编辑apache2.conf,或者自己加一个httpd.conf,作为用户配置文件,apache2.conf 中include这个配置文件。)

AddType application/x-httpd-php .php .htm .html

添加首页文件 三个的顺序可以换 前面的访问优先 (当然你也可以加别的 比如default.php)

DirectoryIndex index.htm index.html index.php

更改服务器地址(这里改为本机),您可以凭您喜好修改,就是必须一致

ServerName 127.0.0.1

修改apache的根目录DocumentRoot:

sudo nano /etc/apache2/sites-enabled/000-default

将其中的 DocumentRoot /var/www 改成您想要的目录比如 DocumentRoot /var/www/htdocs/ 以上Apache2就基本配置完成了。重启Apache2服务即可。 下面的是参考,一般不需要改变,除非有特殊需求。

sudo nano /etc/apache2/ports.conf #修改端口号,把 NameVirtualHost *:80 改为NameVirtualHost 127.0.0.1:80 , 修改 Listen 80

再修改site的配置文件

/etc/apache2/sites-available/default

80是端口号

sudo a2enmod rewrite #开启apache 的rewrite功能

Apache模块

sudo a2enmod #启用模块
sudo a2dismod #禁用模块

配置PHP5

这个没什么好说的 根据个人自己需要
建议将安全模块开启(注意!开启后phpmyadmin会不能用)

sudo nano /etc/php5/conf.d/php.ini

注意:你可能需要敲入命令

php --ini

或

php -i | grep php.ini

来获取你的php cli加载的php.ini路径(Loaded Configuration File,比如 /etc/php5/cli/php.ini 而非 /etc/php5/conf.d/php.ini)。但此文件并不一定是apache php5模块加载的php.ini文件,如果要获得apache php5模块加载的php.ini,请参见测试_phpinfo()

nano可以用Ctrl+w来搜索将 safe_mode = off safe_mode = 设置为 safe_mode = on safe_mode = /var/www/htdocs/ 以上 /var/www/htdocs/是您在上面设置个网站根目录,请按照情况修改,结尾的/是一定要加的,

不然 /var/www/htdocsa,/var/www/htdocsb,等目录也可以访问。

以下是更改默认时区

;date.timezone=

去掉前面的分号 后面加个PRC 。表示中华人民共和国(就是GMT+8时区)

date.timezone= PRC

配置MySQL

MySQL常用命令

MySQL大部分命令是以

;

结尾,这里除了5给出的命令,其它一定要以

;

结尾!

1.进入mysql

mysql -h [服务器地址] -u [用户名〕-p

这是访问本地服务器

mysql -h 127.0.0.1 -u [用户名〕 -p
如:mysql -h 127.0.0.1 -u root -p

认证成功之后就进入mysql的命令控制台,以下都是在mysql的命令控制台的命令。

2.显示已经存在的数据库

SHOW DATABASES;

3.创建数据库 数据库名在这里是没有[]号的!!,还有在linux下是区分大小写(只是使用时有关!)。

CREATE DATADASE [数据库名];

4.创建一个受限用户 这个用户(testuser)只有一个数据库(这里是test库)的访问写入权限,这个数据库创建与删除表的权限,并且只能在本地登入,密码为userpasswd

grant select,insert,update,delete,create,alter on test.* to 'test'@'localhost' IDENTIFIED BY 'userpasswd';

5.退出数据库

quit 或者 \q

配置文件(新手、无特殊要求勿动)

sudo nano /etc/mysql/my.cnf

这里有一个地方要注意 默认:是只允许本地访问数据库的这里不是说本机架设了网站,用户通过架设在的网页不能访问MySQL ,是指其它机子不能直接访问MySQL

bind-address 127.0.0.1

解除限制只能本地访问mysql,如果需要其他机器访问,应使用如下语句,把这"bind-address 127.0.0.1"句话用#注释掉

#bind-address 127.0.0.1

配置phpmyadmin(没装就不要看)

sudo apt-get install phpmyadmin

访问 http://localhost/phpmyadmin ,phpmyadmin 默认并不是安装在 /var/www下面的而是在 /usr/share/phpmyadmin

你可以把phpmyadmin复制过去 或者 链接过去

sudo ln -s /usr/share/phpmyadmin /var/www/phpmyadmin

然后 终端中运行命令

sudo gedit /etc/phpmyadmin/apache.conf

然后把下面两句的路径 改为/var/www/phpmyadmin(因为我已经配置好环境,所以忘记了phpmyadmin中默认配置怎么写的。。反正就是在第三行和第四行的两句.如果我没记错的话 应该是下面这样)

Alias /phpmyadmin /usr/share/phpmyadmin

改为:

Alias /phpmyadmin /var/www/phpmyadmin

LAMP到此已经配置完成了

测试 phpinfo(); (根据需要,自己选择,可不做)

创建、测试phpinfo:

sudo vi /var/www/info.php   注意:这里的路径错了,应该是sudo vi /var/www/htdocs/info.php  修改人:fenghelong邮箱fenghelong_njit@163.com

打开 http://localhost/info.php 。

性能优化(根据需要,自己选择,可不做)

安装Zend Optimizer

要求PHP版本为5.2,不支持Ubuntu10.04的PHP5.3,请参照PHP5.2。

下载 Zend Optimizer。 直接贴下载地址,参考版本号改(这是32位的),不然主页要注册才能下

 http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
tar zxvf ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
cd ZendOptimizer-3.3.9-linux-glibc23-i386/data/5_2_x_compsudo mkdir /usr/local/zendsudo cp ZendOptimizer.so /usr/local/zend

编辑php.ini

sudo gedit /etc/php5/apache2/php.ini

开头加入,注意标点符号要英文。

[Zend Optimizer]zend_optimizer.optimization_level=1  zend_extension="/usr/local/zend/ZendOptimizer.so"

重启apache2

sudo /etc/init.d/apache2 restart

还是上面那个phpinfo文件,要能看到如下信息

This program makes use of the Zend Scripting Language Engine:Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies    with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies

安裝XCache

sudo apt-get install php5-xcache
root@ubuntu:/home/qii# dpkg -l | grep xcachii  php5-xcache                          1.2.2-5                                         Fast, stable PHP opcode cacher

xcache配置文件路径是

/etc/php5/conf.d/xcache.ini

编辑php.ini

sudo gedit /etc/php5/apache2/php.ini

把xcache.ini的内容加入到php.ini。 重启apache2

sudo /etc/init.d/apache2 restart

检查安装是否成功

root@ubuntu:/home/qii# php -vPHP 5.2.10-2ubuntu6 with Suhosin-Patch 0.9.7 (cli) (built: Oct 23 2009 16:30:10) Copyright (c) 1997-2009 The PHP GroupZend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies    with XCache v1.2.2, Copyright (c) 2005-2007, by mOo

还有前面info.php页应该有XCache模块

这里有点奇怪的是,如果不把xcache.ini的内容加入php.ini,apache也能载入XCache,但info.php上没XCache模块。

安装eAccelerator

sudo apt-get install php5-dev

下载 eAccelerator

wget http://bart.eaccelerator.net/source/0.9.6.1/eaccelerator-0.9.6.1.tar.bz2
tar jxvf eaccelerator-0.9.6.1.tar.bz2
cd eaccelerator-0.9.6.1
phpizesudo ./configure -enable-eaccelerator=sharedsudo make
qii@ubuntu:~/tmp/eaccelerator-0.9.6.1$ sudo make installInstalling shared extensions:     /usr/lib/php5/20060613+lfs/

修改php.ini文件,安装为Zend扩展,最好放在开头,放到[zend]之前,免的出莫名其妙的问题:

sudo vi /etc/php5/apache2/php.ini
[eaccelerator]zend_extension="/usr/lib/php5/20060613+lfs/eaccelerator.so" eaccelerator.shm_size="16" eaccelerator.cache_dir="/tmp/eaccelerator" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9" eaccelerator.allowed_admin_path="/var/www/control.php"

创建cache缓存目录

eaccelerator.cache_dir="/var/cache/eaccelerator"   这里定义cache路径

默认值是/tmp/eaccelerator,这非常简单因为任何人都对该目录可写,但是并不明智,因为重启后系统会自动清理该目录。一个更好的地方是/var/cache/eaccelerator。创建该目录并确保它对eAccelerator的使用者可写(通常该用户是你的网络服务器运行者,可能是www-data)。 使用默认值的话这样继续:

mkdir /tmp/eaccelerator
chmod 777 /tmp/eaccelerator

改成 /var/cache/eaccelerator的话这样继续,先改php.ini

eaccelerator.cache_dir="/var/cache/eaccelerator"
sudo mkdir /var/cache/eacceleratorsudo chown root:www-data /var/cache/eacceleratorsudo chmod u=rwx,g=rwx,o= /var/cache/eaccelerator

复制控制文件control.php到网站根目录

sudo cp control.php /var/www/htdocs/

修改control.php的$user和$pw,默认是admin和eAccelerator

sudo vi /var/www/htdocs/control.php

重启apache

sudo /etc/init.d/apache2 restart

打开 http://localhost/control.php

查看之前的info.php页面,有下列字段:

This program makes use of the Zend Scripting Language Engine:Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies    with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator

安全

隐藏服务器信息

vim /etc/apache2/apache2.confServerTokens Prod

指定apache2的运行账户

以root来运行是很危险的,用下面的方法更改,这里是都改为www-data

vim /etc/apache2/envvarsexport APACHE_RUN_USER=www-dataexport APACHE_RUN_GROUP=www-data

要确认存在这些用户组。

启用.htaccess

这个对pbpbb3这样有附带.htaccess的程序有利,不过其它场合有可能引发问题。 方法:在网站主机配置下加入AllowOverride AuthConfi 例子:

vim /etc/apache2/sites_available/default...AllowOverride AuthConfig...

其他

PDO的安装

pecl search pdo
sudo pecl install pdo
sudo pecl install pdo_mysql

最后编辑php.ini

sudo gedit /etc/php5/apache2/php.ini

再最后面添加两行:

extension = pdo.so
extension = pdo_mysql.so

排错

无法解析php文件,浏览器提示下载所要打开的php文件

执行:

sudo apt-get install libapache2-mod-php5sudo a2enmod php5

如果显示为:

This module does not exist!

那就要彻底删除libapache2-mod-php5,然后重新安装它

sudo apt-get remove --purge libapache2-mod-php5sudo apt-get install libapache2-mod-php5

重启apache2

sudo /etc/init.d/apache2 restart

清除浏览器缓存,然后输入http:localhost

虚拟主机

见Apache虚拟主机指南

屏蔽迅雷

迅雷的user-agent是

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; )Mozilla/5.0  (compatible; MSIE 6.0; Windows NT 5.0)Mozilla/4.0 (compatible; MSIE  6.0; Windows NT 5.0; .NET CLR 3.5.20706)Mozilla/4.0 (compatible;  MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)

通过.htaccess文件屏蔽迅雷的下载/盗链功能:

RewriteEngine On#Anti ThunderRewriteCond  %{HTTP_USER_AGENT}  ^Mozilla/4\.0\  \(compatible;\ MSIE\ 6\.0;\ Windows\ NT\ 5\.0\)___FCKpd___98nbsp; [NC,OR]RewriteCond   %{HTTP_USER_AGENT}  ^Mozilla/5\.0\ \(compatible;\ MSIE\ 6\.0;\ Windows\  NT\ 5\.0\)___FCKpd___98nbsp; [NC,OR]RewriteCond  %{HTTP_USER_AGENT}  ^Mozilla/4\.0\  \(compatible;\ MSIE\ 6\.0;\ Windows\ NT\ 5\.1;\ \)___FCKpd___98nbsp;  [NC,OR]RewriteCond   %{HTTP_USER_AGENT}  ^Mozilla/4\.0\ \(compatible;\ MSIE\ 6\.0;\ Windows\  NT\ 5\.0;\ \.NET\ CLR\ 3\.5\.20706\)___FCKpd___98nbsp; [NC,OR]RewriteCond   %{HTTP_USER_AGENT}  ^Mozilla/4\.0\ \(compatible;\ MSIE\ 6\.0;\ Windows\  NT\ 5\.1;\ SV1;\ \.NET\ CLR\ 1\.1\.4322;\ \.NET\ CLR\ 2\.0\.50727\)___FCKpd___98nbsp;  [NC]RewriteRule  ^.*\.(gif|jpg|bmp|zip|rar|exe|mp3|swf)___FCKpd___98nbsp;  /    [NC,F]

你可以用Firefox的扩展user-agent switcher来测试效果。

如果你的资料地址已经被迅雷索引,请修改资源的路径地址。

如果用户手动用UltraEdit改写迅雷的user-agent,亦或者本机装虚拟机,虚拟机挂代理,迅雷挂虚拟机中的代理,这种屏蔽方法就失效了。

"ubuntu下LAMP环境的详细安装教程 "的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

文件 配置 命令 路径 服务 数据 数据库 网站 软件 用户 管理 服务器 模块 地址 密码 目录 系统 这是 终端 迅雷 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 中关村互联网 科技集团 广州百单互联网科技有限公司 互联网扶贫科技 成都互联网科技公司 华中科技有哪些互联网大佬 富国互联网科技创新基金 北京华百购互联网科技有限公司 重庆威客帮互联网科技 广州恒生互联网科技有限 互联网科技公司有风险吗 广州市恰铎互联网科技有限公司 深圳艾果互联网通讯科技 科技赋能视角下互联网保险发展 富国互联网科技002692 35岁以上互联网科技行业 东营紫格互联网科技 昆明中奇联合互联网科技 互联网科技平台产品运营 科技和互联网行业的特点 陕西彩京云互联网科技有限公司 百单网互联网科技有限公司怎么样 科技和互联网公司 狮子座互联网科技有限公司 长亮科技互联网金融 河南猎农互联网科技有限公司 知域互联网科技有限公司大骗子 米聚互联网科技南京有限公司排面 沐思想互联网科技有限公司 青岛易易互联网科技 互联网的黑科技实验室
0