LAMP架构全攻略

  一个完整的LAMP平台如下图所示,需要提供以下服务

 

LAMP
一、安装配置
二、功能扩展
 1、路径别名
 2、虚拟主机
 3、访问控制
 4、安装php程序的Discuz论坛
 5、安装图形化mysql管理工具phpMyAdmin
前提先关掉selinux setenfor
一、
1)安装所需rpm包
 

  
  
  
  
  1. #yum -y install httpd  
  2. #yum -y install mysql mysql-server  
  3. #yum -y install php53 php53-mbstring php53-mysql  

以上安装的是lamp必须包
2)启动各项服务
 

  
  
  
  
  1. #service httpd start  
  2. #service mysqld start  

此时输入你本机的IP地址:X.X.X.XS可以看到一个redhat的欢迎界面,表明此时apache可以正常工作了
3)使用php
 

  
  
  
  
  1. #cd /var/www/html  
  2. #vim index.php  
  3. <?php 
  4.  phpinfo();  
  5. ?> 
  6. #service httpd restart  

此时输入你本机的IP地址:x.x.x.x可以看到一个php的测试页面,表明此时php可以正常工作了
4)使用Mysql
 

  
  
  
  
  1. #mysql  
  2. mysql>use mysql;  
  3. mysql>select host,user,password from user;  
  4. mysql>update user set password=password('redhat') where user='root';  //为root加密码,你懂得,为了安全  
  5. mysql>drop user ''@localhost;  
  6. mysql>drop user ''@station29.example.com';               //删除两个匿名用户,你懂得,依然为了安全   
  7. mysql>flush privileges;  
  8. mysql>\q  
  9. #mysql -uroot -p  //可以测试一下密码是否修改成功  
  10. 连接Mysql:测试若连接成功显示yes 连接失败显示no  
  11. #cd /var/www/html  
  12. #vim index.php  
  13. <?php 
  14.  $link=mysql_connect('localhost','root','redhat');  
  15.  if($link)  
  16.   echo "success!!";  
  17.  else  
  18.   echo "no";  
  19.  mysql_close();  
  20. ?> #service httpd restart
     

浏览器中输入你的ip:X.X.X.X,查看得到的结果success


     OK到此处为止,一个基本的LAMP平台已经打造好了,当然这些远远不能满足我们的需求


二、功能扩展
1、路径别名
目的:输入IP地址 X.X.X.X/xhr/时,出现上图画面
 

  
  
  
  
  1. #vim /etc/httpd/conf/httpd.conf  
  2. 添加如下内容:  
  3. Alias /xhr/  "/var/www/html/"  
  4. #httpd -t  
  5. #service httpd restart  

测试:输入IP地址 X.X.X.X/xhr/

2、虚拟主机
    目的:输入www.format.com可以显示内容为www.format.com,并记录错误日志为logs/www.error_log  访问日志为logs/www.access_log,主页所在目录为/web/vhosts/www
 

  
  
  
  
  1. #mkdir -pv /web/vhosts/www   
  2. #vim /etc/httpd/conf/httpd.conf  
  3. 取消中心主机,注释掉  
  4. DocumentRoot /var/www/html/  
  5. 启用虚拟主机  
  6. NameVirtual *:80  
  7. 并添加如下内容  
  8. <VirtualHost *:80> 
  9.         ServerName www.format.com  
  10.         DocumentRoot /web/vhosts/www  
  11.         ErrorLog logs/www.error_log  
  12.         CustomLog logs/www.access_log common  
  13. </VirtualHost> 
  14. #httpd -t  
  15. #service httpd restart  

在你的物理机的hosts文件中添加如下内容:
X.X.X.X www.format.com
测试:输入www.format.com

显示

3、访问控制
目的:添加两个用户分别为gentoo centos密码都为redhat,实现只有通过认证才可进入
 

  
  
  
  
  1. #vim /etc/httpd/conf/httpd.conf  
  2. 添加内容如下</Directory>中的内容  
  3. <VirtualHost *:80> 
  4.         ServerName www.format.com  
  5.         DocumentRoot /web/vhosts/www  
  6.         ErrorLog logs/www.error_log  
  7.         CustomLog logs/www.access_log common  
  8.         <Directory "/web/vhosts/www"> 
  9.                 AllowOverride AuthConfig  
  10.                 AuthType Basic  
  11.                 AuthName "stuff of"  
  12.                 AuthUserFile /etc/httpd/conf/.htaccess  
  13.                 Require valid-user  
  14.         </Directory> 
  15.  
  16. </VirtualHost> 
  17. # htpasswd -c -b -m /etc/httpd/conf/.htaccess gentoo redhat  
  18. # htpasswd -b -m /etc/httpd/conf/.htaccess centos redhat  
  19. # httpd -t  
  20. # service httpd restart  
  21.  

测试:输入www.format.com
输入用户名和密码即可


4、安装图形化mysql管理工具phpMyAdmin
   为phpMyAdmin创建一个虚拟主机,地址栏中输入pma.format.com显示phpMyAdmin的网页
 

  
  
  
  
  1. <VirtualHost *:80> 
  2.         ServerName pma.format.com  
  3.         DocumentRoot /web/vhosts/pma  
  4.         ErrorLog logs/pma.error_log  
  5.         CustomLog logs/pma.access_log common  
  6. </VirtualHost> 
  7. #mkdir /web/vhosts/pma  
  8. #tar xf phpMyAdmin-3.5.1-all-languages.tar.gz  
  9. #cd phpMyAdmin-3.5.1-all-languages  
  10. #mv ./* /web/vhosts/pma  

浏览器中输入pma.format.com
输入用户名密码,即可


进入后会发现如下问题

下面来修改
question1k:

  
  
  
  
  1. #cd /web/vhosts/pma  
  2. #cd example  
  3. #ls   
  4. 有个create_tables.sql   
  5. #mysql -uroot -p  
  6. mysql>source ./create_tables.sql  
  7. OK  
  8. mysql>\q  
  9. #cd ..  
  10. #vim config.inc.php  
  11. 把里面一堆的cfg启用  
  12. 注意有两行有pma 和pmapass的cfg不要启用(不然会出现控制用户失败)  
  13. 重新登录就OK啦

    question2:

  缺少mcrypt扩展  (说明php53需要一个加密库,以加密的机制实现mysql数据的安全)
 

  
  
  
  
  1. 下载php53-mcrypt-5.3.3-1.el5.i386.rpm libmcrypt-2.5.7-5.el5.i386.rpm
  2. #rpm -ivh php53-mcrypt-5.3.3-1.el5.i386.rpm  
  3. #rpm -ivh libmcrypt-2.5.7-5.el5.i386.rpm
  4. 重启服务 –OK  

question3:

  
  
  
  
  1. #vim config.inc.php  
  2. 修改一下  
  3. $cfg ['blowfish_secret']=' ';里面的内容随即串  
  4. #dd if=/dev/urandom count=1 bs=512 | md5sum    
  5. 可以取得随即串,复制到上面内容中也OK  

上面的三个问题解决完,你就可以随心所欲的使用这个图像化的数据库管理系统了

配置过程中,出现不同的问题:

1、配置phpMyAdmin,登陆时不提示错误,却一直登陆不了
2、phpMyAdmin登陆时,提示如下错误;必须有cookies才能登陆

 

原因没有细化,只是又重新解压并安装了一次,就OK了,奇怪了。

期待交流

你可能感兴趣的:(lamp)