Linux LAMP环境搭建

软件安装与卸载

软件安装

  1. .rpm格式:二进制格式,相对于window下的.exe文件
  2. .tar.gz:二进制源码包,需要借助于gcc 编译器进行源码编译安装
  3. yum:自动解决依赖问题

    安装软件查询

  4. 基本语法:rpm -qa
    1. -q(query) 表示查询
    2. -a(all) 表示所有
  5. 查询指定软件:rpm -qa | grep 软件名称
    1. | 管道,可以针对前面的结果进行二次筛选
    2. grep 匹配
  6. 卸载软件
    1. 基本语法:rpm -e 软件名称 (软件名称可以只选到软件名称)
  7. 软件安装
    1. 基本语法:rpm -ivh (软件名称)
    2. -i :表示安装
    3. vh:显示进度条
    4. 注意:镜像文件被正确选中,已连接的状态
    5. cd /media/CentOS_6.5_Final/Packages/ 进入媒体文件夹(存储了很多安装包)

      源码编译安装

  8. 先解压
  9. 进入安装目录
  10. 编译
  11. 安装

    Apache 安装

  12. 进入LAMP安装目录
  13. 使用tar命令实现解压功能
    1. tar -zxvf httpd-2.2.11.tar.gz
  14. 进入到解压目录并编译(需安装gcc)
    1. cd httpd-2.2.11
    2. ./configure --prefix=/usr/local/apache --enable-so
  15. 安装
    1. make && make install
  16. 配置加载PHP
    1. vim /usr/local/apache/conf/httpd.conf
    2. AddType application/x-httpd-php .php

      启动Apache,并测试Apache

  17. 进入到Apache的bin目录启动Apache:[root@localhost usr]# cd /usr/local/apache/bin
  18. 修改Apache配置文件:[root@localhost bin]# vim ../conf/httpd.conf
    1. 开启并修改域名:ServerName localhost:80
  19. 重启Apache:
  20. 测试
    1. 关闭防火墙:service iptables stop;服务器重启之后防火墙会再次开启。实际应用场景可修改编辑(/etc/sysconfig/iptables文件,开启SSH端口22,或tcp80,数据库3306可以加上如下内容:-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT)
    2. 直接输入IP地址,测试
    3. 在命令行下使用curl工具:/usr/bin/curl http:127.0.0.1
    4. 通过端口的方式:netstat -tunple|grep 80
    5. 通过进程方式:ps - aux | grep httpd
  21. 报错排错:
    apache_error
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    [root@localhost bin]# ./apachectl start
    (98)Address already in use: make_sock: could not bind to address [::]:80
    (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
    no listening sockets available, shutting down
    Unable to open logs
    [root@localhost bin]# netstat -tunple|grep 80
    tcp 0 0 :::80 :::* LISTEN 0 59332 22963/httpd
    udp 0 0 :::57780 :::* 29 12263 1361/rpc.statd
    udp 0 0 fe80::20c:29ff:fe04:2b3c:123 :::* 0 13141 1573/ntpd
    [root@localhost bin]# pkill httpd
    [root@localhost bin]# netstat -tunple|grep 80
    udp 0 0 :::57780 :::* 29 12263 1361/rpc.statd
    udp 0 0 fe80::20c:29ff:fe04:2b3c:123 :::* 0 13141 1573/ntpd
    [root@localhost bin]# ./apachectl start

PHP安装

安装zlib压缩库

  1. 进入LAMP安装目录
    1. `[root@localhost home]# cd /home/LAMP`
    
  2. 使用tar命令实现解压功能
    1. `[root@localhost LAMP]# tar -zxvf zlib-1.2.5.tar.gz`
    
  3. 进入到解压目录并编译(需安装gcc)
    1. `[root@localhost LAMP]# cd zlib-1.2.5`
    2. `[root@localhost zlib-1.2.5]# ./configure`
    
  4. 安装
    1. `[root@localhost zlib-1.2.5]# make && make install`
    

    安装libxml2

  5. 进入LAMP安装目录
    1. `[root@localhost home]# cd /home/LAMP`
    
  6. 使用tar命令实现解压功能
    1. `[root@localhost LAMP]# tar -zxvf libxml2-2.7.2.tar.gz`
    
  7. 进入到解压目录并编译(需安装gcc)
    1. `[root@localhost LAMP]# cd libxml2-2.7.2`
    2. `[root@localhost libxml2-2.7.2]# ./configure --prefix=/usr/local/libxml2 -without-zlib`
    
  8. 安装
    1. `[root@localhost libxml2-2.7.2]# make && make install`
    

    安装jpeg8

  9. 进入LAMP安装目录
    1. `[root@localhost home]# cd /home/LAMP`
    
  10. 使用tar命令实现解压功能
    1. `[root@localhost LAMP]# tar -zxvf jpegsrc.v8b.tar.gz`
    
  11. 进入到解压目录并编译(需安装gcc)
    1. `[root@localhost LAMP]# cd jpeg-8b/`
    2. `[root@localhost jpeg-8b]# ./configure --prefix=/usr/local/jpeg --enable-shared --enable-static`
    
  12. 安装
    1. `[root@localhost jpeg-8b]# make && make install`
    

    安装libpng

  13. 进入LAMP安装目录
    1. `[root@localhost home]# cd /home/LAMP`
    
  14. 使用tar命令实现解压功能
    1. `[root@localhost LAMP]# tar -zxvf libpng-1.4.3.tar.gz`
    
  15. 进入到解压目录并编译(需安装gcc)
    1. `[root@localhost LAMP]# cd libpng-1.4.3`
    2. `[root@localhost libpng-1.4.3]# ./configure`
    
  16. 安装
    1. `[root@localhost libpng-1.4.3]# make && make install`
    

    安装freetype(字体库)

  17. 进入LAMP安装目录
    1. `[root@localhost home]# cd /home/LAMP`
    
  18. 使用tar命令实现解压功能
    1. `[root@localhost LAMP]# tar -zxvf freetype-2.4.1.tar.gz`
    
  19. 进入到解压目录并编译(需安装gcc)
    1. `[root@localhost LAMP]# cd freetype-2.4.1`
    2. `[root@localhost freetype-2.4.1]# ./configure --prefix=/usr/local/freetype`
    
  20. 安装
    1. `[root@localhost freetype-2.4.1]# make && make install`
    

    安装GD库

  21. 进入LAMP安装目录
    1. `[root@localhost home]# cd /home/LAMP`
    
  22. 使用tar命令实现解压功能
    1. `[root@localhost LAMP]# tar -zxvf gd-2.0.35.tar.gz`
    
  23. 进入到解压目录并编译(需安装gcc)
    1. `[root@localhost LAMP]# cd gd-2.0.35`
    2. `[root@localhost gd-2.0.35]# ./configure --prefix=/usr/local/gd  --with-jpeg=/usr/local/jpeg/ --with-png --with-zlib --with-freetype=/usr/local/freetype`
    
  24. 安装
    1. `[root@localhost gd-2.0.35]# make && make install`
    

    安装PHP

  25. 进入LAMP安装目录
    1. `[root@localhost home]# cd /home/LAMP`
    
  26. 使用tar命令实现解压功能
    1. `[root@localhost LAMP]# tar -zvxf php-5.3.28.tar.gz`
    
  27. 进入到解压目录并编译(需安装gcc)
    1. `[root@localhost LAMP]# cd php-5.3.28`
    2. `[root@localhost php-5.3.28]#./configure --prefix=/usr/local/php --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd  --with-mysqli=mysqlnd --with-freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd   --with-zlib --with-libxml-dir=/usr/local/libxml2 --with-jpeg-dir=/usr/local/jpeg --with-png-dir --enable-mbstring=all --enable-mbregex --enable-shared --with-config-file-path=/usr/local/php/etc --with-curlwrappers --with-apxs2=/usr/local/apache/bin/apxs`
    
  28. 安装
    1. `[root@localhost php-5.3.28]# make && make install`
    

    安装MySQL

    MySQL使用二进制包安装,已经安装过了的(安装前终止msyqld进程:pkill mysqld
  29. 进入LAMP安装目录
    1. `[root@localhost home]# cd /home/LAMP`
    
  30. 使用tar命令,使用C指定解压目录
    1. `[root@localhost LAMP]# tar -zxvf mysql-5.5.38-linux2.6-i686.tar.gz -C /usr/local`
    
  31. 进入到解压目录/usr/local
    1. `[root@localhost LAMP]# cd /usr/local`
    
  32. 创建软连接
    1. `[root@localhost local]# ln -sv mysql-5.5.38-linux2.6-i686/ mysql`
    2. `[root@localhost local]# cd mysql`
    
    使用vim INSTALL-BINARY查看安装提示
  33. 添加MySQL用户
    1. `[root@localhost local]# useradd mysql`
    
  34. 修改文件权限
    1. `[root@localhost mysql]# chown -R mysql.mysql ./`
    
  35. 安装MySQL
    1. `[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql`
    2. 成功提示:
    
    Alt text
  36. 再次修改权限
    1. `[root@localhost mysql]# chown -R root . `
    2. `[root@localhost mysql]# chown -R mysql data`
    
  37. 复制配置文件
    1. `[root@localhost mysql]# cp support-files/my-medium.cnf /etc/my.cnf`
    2. `cp:是否覆盖"/etc/my.cnf"? y`
    
  38. 复制服务
    1. `[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld`
    
  39. 将MySQL的服务添加到系统服务中
    1. `[root@localhost mysql]# chkconfig --add mysqld`
    
  40. 启动MySQL服务
    1. `[root@localhost mysql]# service mysqld start`
    
  41. 默认安装完成没有密码,修改密码
    1. [root@localhost mysql]# ./bin/mysqladmin -u root password 'newpass'
    2. 如果已经设置了密码可以通过如下方式设置
      1. mysql> set password for 'root'@'localhost'=password('newpass');
      2. [root@localhost mysql]# ./bin/mysqladmin -u root password oldpass 'newpass'
      3. update user set password = password('newpass') where user = 'root';
    3. 如果密码丢失了,可以这样:
      1. mysql_safe --skip-grant-tables&mysql -u root mysql
      2. mysql> update user set password=password('new password') where user ='root';
      3. mysql>FLUSH PRIVILEGES;
  42. 打开MySQL客户端
    1. `[root@localhost mysql]# ./bin/mysql -uroot -p`
    2. `Enter password:`
    
  43. 报错排错
    Alt text
    Alt text
    Alt text

    设置远程登录权限

  44. mysql> use mysql
  45. mysql> select host,user from user;
    Alt text
  46. mysql> update user set host='%' where user ='root' and host ='127.0.0.1';
    Alt text
  47. mysql> delete from user where host != '%';
    Alt text
  48. mysql> FLUSH PRIVILEGES;
  49. 若没有关闭防火墙需要关闭防火墙 ervice iptables stop

  50. 开启静态IP

    1
    2
    3
    4
    5
    6
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=static
    IPADDR=192.168.34.100
    NETMASK=255.255.255.0
    NM_CONTROLLED=no