魔扣论坛

魔扣源码论坛业务
查看: 1214|回复: 5

Linux下Apache+mysql+PHP运行环境搭建教程

[复制链接]
  • TA的每日心情
    擦汗
    2016-5-12 16:36
  • 签到天数: 1 天

    [LV.1]初来乍到

    6

    主题

    1

    回帖

    4

    积分

    魔扣新手

    Rank: 1

    魔扣币
    3
    贡献
    3
    威望
    0
    发表于 2016-12-31 15:56:27 | 显示全部楼层 |阅读模式
    魔扣币兑换比例:【 50以下 : ¥1 = 10 魔扣币 】丨【 50 - 100 :¥1 = 20 魔扣币】丨【 100以上:¥1 = 30 魔扣币 】

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    今天因为工具需要需要配置一个web环境,由于初次接触在linux内核系统中配置Apache+mysql+PHP环境折腾了许久,下面整理了一篇安装教程与大家一起交流一下吧。
    PHP之服务器环境搭建安装软件准备
    1. Apache224.tar.gz
    2. php-5.2.9.tar.gz
    3. mysql-5.1.54.tar.gz
    PHP和各个组件包
    libxml2-2.6.30.tar.gz
    xml c语言版的解析器
    libmcrypt-2.5.8.tar.gz
    加密算法扩展库
    zlib-1.2.3.tar.gz
    压缩图像组件
    gd-2.0.35.tar.gz
    处理图片的API
    autoconf-2.61.tar.gz
    自动配置源代码的shell脚本
    freetype-2.3.5.tar.gz
    操作字体的函数库
    libpng-1.2.26.tar.gz
    解析PNG图象格式的库
    jpegsrc.v6b.tar.gz
    ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz
    zend加速器安装
    libxml2-2.6.30.tar.gz
    1.解压libxml2-2.6.30.tar.gz
    tar zxvf libxml2-2.6.30.tar.gz
    2.配置libxml2-2.6.30
    cd libxml2-2.6.30
    ./configure –prefix=/usr/local/libxml
    23.编译
    make
    4.安装
    make install
    如果安装成功以后,在/usr/local/libxml2/目录下将生成bin、include、lib、man和share五个目录。
    安装libmcrypt-2.5.8.tar.gz
    1.解压libmcrypt-2.5.8.tar.gz
    tar zxvf libmcrypt-2.5.8.tar.gz
    2.配置 cd libmcrypt-2.5.8.tar.gz
    ./configure –prefix=/usr/local/libmcrypt
    3.编译
    make
    4.安装
    make install
    如果安装成功就会在/usr/local/libmcrypt/目录下生成bin、include、lib、man和share五个目录。
    安装zlib-1.2.3.tar.gz
    1.解压zlib-1.2.3.tar.gz
    tar zxvf zlib-1.2.3.tar.gz
    2.配置 cd zlib-1.2.3.
    ./configure –prefix=/usr/local/zlib
    3.编译
    make
    4.安装
    make install
    如果安装成功将会在/usr/local/zlib目录下生成include、lib和share三个目录。
    安装libpng-1.2.26.tar.gz
    1.解压libpng-1.2.26.tar.gz
    tar zxvf libpng-1.2.26.tar.gz
    2.配置
    cd libpng-1.2.26
    ./configure –prefix=/usr/local/libpng
    3.编译
    make
    4.安装
    make install
    如果安装成功将会在/usr/local/libpng目录下生成bin、include、lib和share四个目录。
    安装jpegsrc.v6b.tar.gz
    1.建立相应的目录
    (1)建立jpeg6的软件安装目录
    mkdir /usr/local/jpeg6
    (2)建立存放命令的目录
    mkdir /usr/local/jpeg6/bin
    (3)建立jpeg6库文件所在目录
    mkdir /usr/local/jpeg6/lib
    (4)建立存放头文件的目录
    mkdir /usr/local/jpeg6/include
    (5)建立存放手册的目录
    mkdir /usr/local/jpeg6/man/man1
    2.解压jpegsrc.v6b.tar.gz
    tar zxvf jpegsrc.v6b.tar.gz
    3.配置 cd jpeg-6b
    ./configure –prefix=/usr/local/jpeg6
    //在安装时将软件安装到/usr/local/jpeg6目录下
    --enable-shared
    //建立共享库使用的GNU的libtool
    --enable-static
    //建立静态库使用的GNU的libtool
    4.编译
    make
    5.安装
    make install
    安装freetype-2.3.5.tar.gz
    1.解压freetype-2.3.5.tar.gz
    tar zxvf freetype-2.3.5.tar.gz
    2.配置 cd freetype-2.3.5
    ./configure --prefix=/usr/local/ freetype
    3.编译
    make
    4.安装
    make intall
    安装autoconf-2.61.tar.gz
    1.解压autoconf-2.61.tar.gz
    tar zxvf autoconf-2.61.tar.gz
    2.配置
    cd autoconf-2.61
    ./configure
    3.编译
    make
    4.安装
    make install
    安装gd-2.0.35.tar.gz
    1.解压gd-2.0.35.tar.gz
    tar zxvf gd-2.0.35.tar.gz
    2.配置
    cd gd-2.0.35
    ./configure –prefix=/usr/local/gd2/
    --with-zlib=/usr/local/zlib/
    //指定到zlib库文件的位置
    --with-jpeg=/usr/local/jpeg6/
    //指定到jpeg6库文件的位置
    --with-png=/usr/local/libpng/
    //指定到png库文件的位置
    --with-freetype=/usr/local/freetype
    //指定到freetype2字体库文件的位置
    3.编译
    make
    4.安装
    make install
    注意:安装的时候出现错误
    make[2]: *** [gd_png.lo] Error 1make[2]: Leaving directory `/tmp/gd-2.0.26gif'make[1]: *** [all-recursive] Error 1make[1]: Leaving directory `/tmp/gd-2.0.26gif'make: *** [all] Error 2
    [root@RHEL3 gd-2.0.26gif]#
    解决方法
    cd gd-2.0.35
    vi gd_png.c
    找到“png.h”改成“/usr/local/libpng/include/png.h”


    Apache安装
    1.解压Apache224.tar.gz
    tar zxvf Apache224.tar.gz
    2.执行./configure --prefix=安装的目录
    ./configure
    > --prefix=/usr/local/apache2
    //指定Apache软件安装的位置
    > --sysconfdir=/etc/httpd
    //指定Apache服务器的配置文件存放位置
    > --with-z=/usr/local/zlib/
    //指定zlib库文件的位置
    > --with-included-apr
    //使用捆绑APR/APR-Util的副本
    > --disable-userdir
    //请求的映象到用户特定目录
    > --enable-so
    //以动态共享对象(DSO)编译
    > --enable-deflate=shared
    //缩小传输编码的支持
    > --enable-expires=shared
    //期满头控制
    > --enable-rewrite=shared
    //基于规则的URL操控
    > --enable-static-support
    3.执行make
    make
    4执行make install
    make install
    5.apache安装成功
    6.安装成功后配置apache打开apache的配置文件vi /usr/local/conf/httpd.conf 部分配置项说明
    (1)apache的安装目录 ServerRoot “当前的安装目录” 如:
    ServerRoot “/usr/local/apache”
    (2)apache使用的端口 Listen端口[1-65535中的一任意一个,一般默认为80]
    Listen 80
    (3)服务器根目录即用户访问的目录 DocumentRoot “根目录”
    DocumentRoot “/usr/local/apache/htdocs”
    (4)服务器索引文件即默认返回给用户的文件 DirectoryIndex索引文件名
    DirectoryIndex index.html
    7.修改文件的所有者和所有组
    cd /usr/local/apache
    chown –R nobody:root ./htdocs
    8.修改apache下所有文件权限
    cd /usr/local/apachechmod –R 755 *
    9.启动apache
    cd /usr/local/apache/bin
    ./apachectl start
    10.重启apache
    cd /usr/local/apache/bin
    ./apachectl restart
    安装完毕后却不能找到mod_proxy和mod_rewrite模块,主要原因是APACHE2.2默认的安装选项是最小化的安装,一些扩展模块在默认的状态下都没有被安装,如果需要要在./configure后用参数指定,比方要用到mod_proxy和mod_rewrite两个模块进行实验,所以命令行是:
    ./configure --enable-mods-shared='proxy proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http proxy_rewrite
    这个配置不仅指定了这些模块,同时也默认安装其他最小项。这样配置完后make和make install后,mod_proxy和mod_rewrite两个模块都能找到了另外在安装apache同时可以添加以下配置项
    > --prefix=/usr/local/apache2
    //指定Apache软件安装的位置
    > --sysconfdir=/etc/httpd
    //指定Apache服务器的配置文件存放位置
    > --with-z=/usr/local/zlib/
    //指定zlib库文件的位置
    > --with-included-apr
    //使用捆绑APR/APR-Util的副本
    > --disable-userdir
    //请求的映象到用户特定目录
    > --enable-so
    //以动态共享对象(DSO)编译
    > --enable-deflate=shared
    //缩小传输编码的支持
    > --enable-expires=shared
    //期满头控制
    > --enable-rewrite=shared
    //基于规则的URL操控
    > --enable-static-support
    //建立一个静态链接版本的支持
    12.设置apache开机自动启动
    vi /etc/rc.d/rc.local
    在最后一行添加
    /usr/local/apache/bin/apachectl start
    也可以直接执行
    echo  “/usr/local/apache/bin/apachectl start” >> /etc/rc.d/rc.local
    Mysql的安装
    1.为mysqld增加登录用户和用户组
    groupadd mysqluseradd –g mysql mysql
    2.解压mysql-5.1.54.tar.gz tar zxvf mysql-5.1.54.tar.gz
    3.配置
    ./configure
    >--prefix=/usr/local/mysql
    //将软件安装到/usr/local/mysql目录
    >--with-extra-charsets=all
    //默认安装所有字符集
    4.编译
    make
    5.安装
    make install
    6.创建mysql的配置文件,可以将源码包中的support-files目录中的my-medium.cnf文件作为模板,将其复制到/etc/目录下,并重命名为my.cnf即可
    cd mysql-5.1.54
    cp support-files/my-medium.cnf /etc/my.cnf
    7.如果还没有安装过mysql,需要创建mysql授权表其实是初始化数据库。进入到安装目录即—prefix配置项指定的目录这里是”/usr/local/mysql”,执行bin目录下的mysql_install_db脚本,来初始化mysql数据库的授权表,该表贮存了数据库服务器访问的允许。
    cd /usr/local/mysql
    bin/mysql_install_db --user=mysql
    8.如果使用root用户运行上面的命令,应当使用--user选项,选项的值应与你在第一步为运行服务器所创建的登录账户(mysql用户)相同。如果用MySQL用户登录来运行上面命令,可以省略--user选项。用mysql_install_db创建MySQL授权表后,需要手动重新启动服务器。将程序二进制的所有权改为root用户,数据目录的所有权改为运行mysqld程序的MySQL用户。如果现在位于安装目录(/usr/local/mysql)下

    chown -R root ./
    //将文件的所有属性改为root用户
    chown -R mysql var
    //将数据目录的所有属性改为mysql用户
    chgrp -R mysql
    //将组属性改为mysql组
    9.在所需要的东西被安装完成以后,应当使用下面的命令启动MySQL服务了,命令行如下:
    /usr/local/mysql/bin/mysqld_safe --user=mysql &
    MySQL数据库服务启动之后,查看一下它的端口3306是否打开,如果看到以下结果表明MySQL服务启动成功。命令行如下:
    netstat –tnl | grep 3306
    10.使用mysqladmin验证服务器在运行中。
    11.置访问权限,在MySQL安装过程中,使用mysql_install_db程序安装了MySQL数据库授权表,表定义了初始MySQL用户账户和访问权限,所有初始账户均没有密码。这些账户为超用户账户,可以执行任何操作。初始root账户的密码为空,因此任何人可以用root账户不用任何密码来连接MySQL服务器,并具有所有权限,这意味着MySQL安装未受保护。如果你想要防止客户端不使用密码用匿名用户来连接,你应当为匿名账户指定密码或删掉匿名账户,应当为MySQL root账户指定密码。使用“mysql–u root”启动MySQL客户端控制台,连接MySQL服务器。如果有匿名账户存在,它拥有全部的权限,因此删掉它可以提高安全,在MySQL客户端执行SQL语句如下:
    bin/mysql -u root
    //没有密码可以直接登录本机服务器
    Welcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is 3Server version: 5.0.41-log Source distributionType 'help;' or 'h' for help. Type 'c' to clear the buffer.
    mysql> DELETE FROM mysql.user WHERE Host='localhost' AND User='';
    Query OK, 1 rows affected (0.08 sec)
    mysql> FLUSH PRIVILEGES;
    Query OK, 1 rows affected (0.01 sec)
    12.可以用几种方法为root账户指定密码,我们选用其中一种。在MySQL客户端命令行上使用
    SET PASSWORD
    指定密码,一定要使用PASSWORD()函数来加密密码。例如下面设置localhost域的密码为“123456”。其它域可以使用同样的语句,使用的SQL语句如下:
    mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
    Query OK, 0 rows affected (0.00 sec)
    如果想退出MySQL客户端,可以在MySQL客户端提示符下输入命令“exit”或者“quit”、还可以按键盘“Ctrl+c”组合键,都可以从MySQL客户端中退出。因为已经给MySQL服务器的root账号设置了密码,所以再次登录MySQL客户端就要提供密码才能进入。退出MySQL客户端和重新启动MySQL客户端的控制台命令如下:
    13.如果想关闭MySQL服务器,在命令行使用MySQL服务器的mysqladmin命令,通过-u参数给出MySQL数据库管理员用户名root和通过-p参数给出密码,即可以关闭MySQL服务器。命令行如下:
    [root@localhost mysql]# bin/mysqladmin -u root –p shutdown
    //关闭MySQL 数据库
    mysql> exit
    //退出MySQL客户端
    Bye[root@localhost mysql]# bin/mysql -u root -h localhost–p
    //回车进入MySQL客户端
    Enter password:
    14.MySQL服务器和Apache服务器一样也有必要设置为开机自动运行,设置方法是进入到mysql源代码目录/usr/local/src/mysql-5.0.41/中,将子目录support-files下的mysql.server文件复制到/etc/rc.d/init.d目录中,并重命名为“mysqld”,命令行如下所示:
    [root@localhost mysql]# cd /usr/php/amp/amp/ mysql-5.1.54
    [root@localhost mysql-5.1.54]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
    修改文件/etc/rc.d/init.d/mysqld的权限,命令行如下所示:
    [root@localhost mysql-5.1.54]# chkconfig --add mysqld
    15.使用chkconfig命令设置在不同系统运行级别下的自启动策略,首先使用“chkconfig --add mysqld”命令增加所指定的mysqld服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
    然后使用“chconfig–level 3 mysqld on”命令和“chconfig–level 5 mysqld on”命令,在第三和第五等级中开启mysql服务,即在字符模式和图形模式启动时自动开启mysql服务。命令如下:
    [root@localhost mysql-5.0.41]# chkconfig --level 3 mysqld on
    [root@localhost mysql-5.0.41]# chkconfig --level 5 mysqld on
    [root@localhost mysql-5.0.41]# chkconfig --list mysqldmysqld
    0:关闭1:关闭2:关闭3:启用4:关闭5:启用6:关闭
    php的安装
    1.解压php-5.2.9.tar.gz
    tar zxvf php-5.2.9.tar.gz
    2.配置 cd php-5.2.9.tar.gz
    ./configure
    //执行当前目录下软件自代的配置命令
    > --prefix=/usr/local/php
    //设置PHP5的安装路径
    > --with-config-file-path=/usr/local/php/etc
    //指定PHP5配置文件存入的路径
    > --with-apxs2=/usr/local/apache2/bin/apxs
    //告诉PHP查找Apache 2的地方
    > --with-mysql=/usr/local/mysql/
    //指定MySQL的安装目录
    > --with-libxml-dir=/usr/local/libxml2/
    //告诉PHP放置libxml2库的地方
    > --with-png-dir=/usr/local/libpng/
    //告诉PHP放置libpng库的地方
    > --with-jpeg-dir=/usr/local/jpeg6/
    //告诉PHP放置jpeg库的地方
    > --with-freetype-dir=/usr/local/freetype/
    //告诉PHP放置freetype库的地方
    > --with-gd=/usr/local/gd2/
    //告诉PHP放置gd库的地方
    > --with-zlib-dir=/usr/local/zlib/
    //告诉PHP放置zlib库的地方
    > --with-mcrypt=/usr/local/libmcrypt/
    //告诉PHP放置libmcrypt库的地方
    > --with-mysqli=/usr/local/mysql/bin/mysql_config
    //变量激活新增加的MySQLi功能>
    --enable-soap
    //变量激活SOAP和Web services支持
    > --enable-mbstring=all
    //使多字节字符串支持
    > --enable-sockets
    //变量激活socket通讯特性
    3.编译
    make
    4.安装
    make install
    5.需要修改Apache配置文件,添加PHP的支持,告诉Apache将哪些后缀作为PHP解析。例如,让Apache把.php或.phtml后缀的文件解析为PHP。使用vi打开Apache的配置文件/etc/httpd/httpd.conf,找到“AddType application/x-gzip.gz.tgz”指令项,并在其下方添加一条指令“Addtype application/x-httpd-php .php .phtml”。也可以将任何后缀的文件解析为PHP,只要在添加的语句中加入并用空格分开,这里以多添加一个.phtml来示例。
    vi /etc/httpd/httpd.conf
    If the AddEncoding directives above are commented-out, then you
    # probably should define those extensions to indicate media types:AddType application/x-compress .ZAddType application/x-gzip .gz .tgz
    在这行下面添加
    Addtype application/x-httpd-php .php .phtml
    #添加这一条#添这一个是为了将.phps作为PHP的源文件进行语法高亮显示
    Addtype application/x-httpd-php-source .phps
    # AddHandler allows you to map certain file extensions to "handlers":
    # actions unrelated to filetype. These can be either built into the server
    6.修改apache的配置文件后,需要重启服务器才能重新加载修改后的配置文件
    /usr/local/apache2/bin/apachectl stop
    /usr/local/apache2/bin/apachectl start
    7.如果安装后在/usr/local/php/etc/目录下没有找到php.ini配置文件,可以在php源码包中复制php.ini-dist文件到/usr/local/php/etc/并改名为php.ini
    安装ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz
    1.解压ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz
    tar zxvf ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz
    2.进入ZendOptimizer-3.3.0a-linux-glibc21-i386
    cd ZendOptimizer-3.3.0a-linux-glibc21-i386
    3.执行安装
    ./install.sh
    4.执行上面的操作会出现一个图形安装界面,按提示安装即可
    5.安装成功 环境搭建完毕!你可以尽情体会PHP的强大功能了

    该用户从未签到

    3

    主题

    243

    回帖

    489

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    243
    贡献
    243
    威望
    0
    发表于 2017-2-16 23:57:15 | 显示全部楼层
    支持支持再支持

    该用户从未签到

    0

    主题

    259

    回帖

    518

    积分

    高级魔扣

    Rank: 4

    魔扣币
    259
    贡献
    259
    威望
    0
    发表于 2017-6-16 15:45:44 | 显示全部楼层
    前排,哇咔咔

    该用户从未签到

    3

    主题

    240

    回帖

    484

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    241
    贡献
    241
    威望
    0
    发表于 2017-11-1 16:58:46 来自手机 | 显示全部楼层
    向楼主学习

    该用户从未签到

    1

    主题

    240

    回帖

    481

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    240
    贡献
    240
    威望
    0
    发表于 2018-5-2 09:54:58 | 显示全部楼层
    不管未来有多长久,请珍惜相聚的每一刻;不管多少个春夏秋冬,魔扣源码论坛,我们是永远的朋友。

    该用户从未签到

    2

    主题

    266

    回帖

    534

    积分

    高级魔扣

    Rank: 4

    魔扣币
    266
    贡献
    266
    威望
    0
    发表于 2018-10-16 12:55:42 | 显示全部楼层
    网络里有一种浅浅的神秘,小屋里有一种深深的情谊,回帖里有一种淡淡的惦记,祝福里有一种浓浓的心意,真诚的友谊一定会随缘相聚,魔扣源码论坛是朋友就会牢牢记在心里,生活的蓝天就会无限的美丽!祝福你我亲爱的朋友!祝你周末快乐!
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    • 联系我们
    • 新浪微博 :
    • 在线客服 :魔扣科技 
    • 源码QQ群 :魔扣源码论坛官方总群
    • 联系邮箱 :charlin#morko.net
    • 微信扫一扫
    快速回复 返回顶部 返回列表