linuxlamp?Linux里面LAMP是什么
来源:择校网 时间:2025-01-24 14:10:35
一、怎样查看linux下是否已经搭建lamp环境
方法/步骤
首先为了搭建一个稳定的lamp的练习环境,确保你的虚拟机可以连网,这里我们使用的yum安装,它可以帮助我们解决软件自己的依赖关系.我还在后面加了postgresql数据库如果不需要的话可以去掉和postgresql的参数.命令如下
yum-y install d mysql mysql-server php php-mysql postgresql postgresql-server php-postgresql php-pgsql php-devel
yum安装过程,大概1-2分钟
启动apache服务并查看时候启动成功
命令如下:(切记用root用户启动服务)
启动:/etc/rc.d/init.d/d start
检测启动结果:ps aux| grep d
查看服务器的ip并进入网站根目录新建一个phpinfo.php的程序,用于查看php相关配置信息。
如果上述进展顺利,那我们接下来进行mysql数据库的配置
命令如下:
启动:/etc/rc.d/init.d/mysqld start
检查启动结果: netstat-tulnp| grep:3306
修改root密码: mysqladmin-u root password‘你想设置的密码’
进入mysql数据库,创建demo库和用于测试的person表,并插入测试数据
最后编写php连接mysql的测试代码,检测mysql是否能正常配合php工作
二、Linux里面LAMP是什么
题主你好,
所谓LAMP和LNMP其实是一套环境的总称:
LAMP: linux系统 Apache web服务器软件 Mysql数据库 Php编程语言
而
LNMP: linux系统 Nginx web服务器软件 Mysql数据库 Php编程语言
写在最后:
a.最后那个p应该不只是php,凡是以p开头的应该都成立,如Python等
b.lamp和lnmp说白了就是在linux系统上装了几个软件,这几个软件一起运行在linux系统上可以满足某种需要,如web开发
希望可以帮到题主,欢迎追问
三、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要求设定账户有密码,这是与操作系统没关系的账户与密码。
打开 或
图形化管理软件(可选)
安装webmin
这是一个系统管理软件,管理包含LAMP组件在内的大部分系统服务。同时能进行安装、进程管理等多种系统功能。
先到webmin官方下载软件在该软件包存放位置下,打开终端。(你也可以用命令切换到该位置)
sudo dpkg-i软件包名(用Tab可以少输点字)
如果提示缺少依赖,那差什么就装什么
访问地址(注意是加密安全链接):
安装phpmyadmin
这是一个数据库管理软件,管理mysql.
其实这也是个安全隐患,建议通过openssh来管理服务器。
方案一:终端中运行命令(不推荐)
sudo apt-get install phpmyadmin
方案二:
强烈建议不要从源里安装
在phpmyadmin官网上下载软件包,解压缩到本地目录/var//phpmyadmin
tips:如果你请直接解压到/var//phpmyadmin,如果不存在phpmyadmin,请自行创建
在终端下执行
sudo cp/var//phpmyadmin/config.sample.inc.php/var//phpmyadmin/config.inc.php
sudo gedit/var//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
在浏览器里输入
注:如果进入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
在浏览器里输入
配置文件路径
1apache的配置文件路径/etc/apache2/apache2nf
2apache网站字符编码配置路径/etc/apache2/conf.d/charset
3php.ini路径/etc/php5/apache2/php.ini
4mysql配置文件路径/etc/mysql/my.cnf一般不要使用,尤其是新手
5phpmyadmin配置文件路径/etc/phpmyadmin/apachenf
6默认网站根目录/var/
常用命令
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/apache2nf
在配置文件最后面加入下面几行:
添加文件类型支持(注:如果无法在html中解析php的语句,添加下面语句。网上好多都是说直接编辑dnf,但是ubuntu版本的apache2没有这个文件,你可以直接编辑apache2nf,或者自己加一个dnf,作为用户配置文件,apache2nf中include这个配置文件。)
AddType application/x-d-php.php.htm.html
添加首页文件三个的顺序可以换前面的访问优先(当然你也可以加别的比如default.php)
IfModule dir_moduleDirectoryIndex index.htm index.html index.php/IfModule
更改服务器地址(这里改为本机),您可以凭您喜好修改,就是必须一致
ServerName 127.0.0.1
修改apache的根目录DocumentRoot:
sudo nano/etc/apache2/sites-enabled/000-default
将其中的 DocumentRoot/var/改成您想要的目录比如 DocumentRoot/var//htdocs/以上Apache2就基本配置完成了。重启Apache2服务即可。下面的是参考,一般不需要改变,除非有特殊需求。
sudo nano/etc/apache2/portsnf#修改端口号,把 NameVirtualHost*:80改为NameVirtualHost 127.0.0.1:80,修改 Listen 80
再修改site的配置文件
/etc/apache2/sites-available/default
80是端口号
VirtualHost*: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//htdocs/以上/var//htdocs/是您在上面设置个网站根目录,请按照情况修改,结尾的/是一定要加的,
不然/var//htdocsa,/var//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
访问 ,phpmyadmin默认并不是安装在/var/下面的而是在/usr/share/phpmyadmin
你可以把phpmyadmin复制过去或者链接过去
sudo ln-s/usr/share/phpmyadmin/var//phpmyadmin
然后终端中运行命令
sudo gedit/etc/phpmyadmin/apachenf
然后把下面两句的路径改为/var//phpmyadmin(因为我已经配置好环境,所以忘记了phpmyadmin中默认配置怎么写的。。反正就是在第三行和第四行的两句.如果我没记错的话应该是下面这样)
Alias/phpmyadmin/usr/share/phpmyadminDirectory/usr/share/phpmyadmin
改为:
Alias/phpmyadmin/var//phpmyadminDirectory/var//phpmyadmin
LAMP到此已经配置完成了
测试 phpinfo();(根据需要,自己选择,可不做)
创建、测试phpinfo:
sudo vi/var//info.php 注意:这里的路径错了,应该是sudo vi/var//htdocs/info.php 修改人:fenghelong邮箱fenghelong_njit@163
?php phpinfo();?
打开 。
性能优化(根据需要,自己选择,可不做)
安装Zend Optimizer
要求PHP版本为5.2,不支持Ubuntu10.04的PHP5.3,请参照PHP5.2。
下载 Zend Optimizer。直接贴下载地址,参考版本号改(这是32位的),不然主页要注册才能下
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
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" eacceleratorpress="1" eacceleratorpress_level="9" eaccelerator.allowed_admin_path="/var//control.php"
创建cache缓存目录
eaccelerator.cache_dir="/var/cache/eaccelerator" 这里定义cache路径
默认值是/tmp/eaccelerator,这非常简单因为任何人都对该目录可写,但是并不明智,因为重启后系统会自动清理该目录。一个更好的地方是/var/cache/eaccelerator。创建该目录并确保它对eAccelerator的使用者可写(通常该用户是你的网络服务器运行者,可能是-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:-data/var/cache/eacceleratorsudo chmod u=rwx,g=rwx,o=/var/cache/eaccelerator
复制控制文件control.php到网站根目录
sudo cp control.php/var//htdocs/
修改control.php的$user和$pw,默认是admin和eAccelerator
sudo vi/var//htdocs/control.php
重启apache
sudo/etc/init.d/apache2 restart
打开
查看之前的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/apache2nfServerTokens Prod
指定apache2的运行账户
以root来运行是很危险的,用下面的方法更改,这里是都改为-data
vim/etc/apache2/envvarsexport APACHE_RUN_USER=-dataexport APACHE_RUN_GROUP=-data
要确认存在这些用户组。
启用.htaccess
这个对pbpbb3这样有附带.htaccess的程序有利,不过其它场合有可能引发问题。方法:在网站主机配置下加入AllowOverride AuthConfi例子:
vim/etc/apache2/sites_available/defaultDirectory/var//...AllowOverride AuthConfig.../Directory
其他
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
清除浏览器缓存,然后输入: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,亦或者本机装虚拟机,虚拟机挂代理,迅雷挂虚拟机中的代理,这种屏蔽方法就失效了。
附录
apache2配置文件与子目录一览表
/etc/apache2/apache2nf全局配置/etc/apache2/envvars环境变量/etc/apache2/portsnf d服务端口信息/etc/apache2/conf.d/一般性配置文件存放地/etc/apache2/mods-available/已安装的模块/etc/apache2/mods-enabled/已经启用的模块/etc/apache2/sites-available/可用站点信息/etc/apache2/sites-enabled/已经启用的站点信息,当中的文件是到/etc/apache2/sites-available/文件的软连接。/etc/apache2/dnf
关于linuxlamp到此分享完毕,希望能帮助到您。