zoukankan      html  css  js  c++  java
  • Linux CentOS 6.5 + Apache + Mariadb + PHP环境搭建

    Web自动化测试-服务端测试环境部署

     

    by:授客

    目录

    一、         安装数据库... 2

    二、         数据库配置... 2

    三、         创建数据库及数据表... 2

    四、         插入基础数据... 5

    五、         Apache. 5

    六、         配置与启动Apache. 6

    七、         安装php. 7

    八、         配置php. 9

    九、         部署php代码文件... 10

    十、         安装及配置vsftpd服务器... 12

     

     

    操作系统环境:CentOS 6.5-x86_64

    下载地址:http://www.centoscn.com/CentosSoft/iso/2013/1205/2196.html

    注:安装时选择以Basic Server的方式安装

     

    Mariadb下载地址

    http://mirrors.opencas.cn/mariadb/mariadb-5.5.45/yum/centos6-amd64/rpms/

     

    Apache下载地址

    http://httpd.apache.org/download.cgi#apache24

     

    pcre下载地址

    http://pcre.org/

     

    apr下载地址

    http://mirrors.cnnic.cn/apache/apr/

     

    apr-util下载地址

    http://mirrors.cnnic.cn/apache/

     

    libxml2下载地址

    http://download.chinaunix.net/download/0007000/6095.shtml

     

    php下载地址

    http://php.net/downloads.php#v5.6.12

     

     

    文件列表如下:



    网盘统一下载地址:http://pan.baidu.com/s/1sj1Lzw5

     

     

    一、安装数据库

    安装MysqlMariadb(笔者选择安装的是Mariadb 5.5.45

     

    需要下载的rpm包如下

    [root@localhost mnt]# ls | grep rpm

    MariaDB-5.5.45-centos6-x86_64-client.rpm

    MariaDB-5.5.45-centos6-x86_64-common.rpm

    MariaDB-5.5.45-centos6-x86_64-compat.rpm

    MariaDB-5.5.45-centos6-x86_64-devel.rpm

    MariaDB-5.5.45-centos6-x86_64-server.rpm

    MariaDB-5.5.45-centos6-x86_64-shared.rpm

    MariaDB-5.5.45-centos6-x86_64-test.rpm

     

    安装Mariadb

    [root@localhost mnt]# rpm -iUvh MariaDB-*.rpm

     

    二、数据库配置

     

    参考文章“MariaDB Centos7 下安装MariaDB

     

     

    三、创建数据库及数据表

    建库:

    CREATE DATABASE `1dcq`

     

    建表:

    CREATE TABLE `pagesobject` (

      `Id` int(11) NOT NULL AUTO_INCREMENT,

      `P_Id` int(11) DEFAULT NULL,

      `PageName` varchar(255) NOT NULL DEFAULT '',

      `Html_open` varchar(10) DEFAULT 'true',

      `PageDesc` varchar(100) DEFAULT NULL,

      `isParent` tinyint(2) DEFAULT NULL COMMENT '如果是0表示文件夹,是1表示1个页面',

      PRIMARY KEY (`Id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=257 DEFAULT CHARSET=utf8

     

     

    CREATE TABLE `page_elements` (

      `Id` int(11) NOT NULL AUTO_INCREMENT,

      `PageId` smallint(6) DEFAULT NULL,

      `FieldOrder` int(11) DEFAULT NULL,

      `ElementName` varchar(100) DEFAULT NULL,

      `ElementSelector` varchar(300) DEFAULT NULL,

      `ElementSelector02` varchar(300) DEFAULT NULL,

      PRIMARY KEY (`Id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=67 DEFAULT CHARSET=utf8

     

    CREATE TABLE `runtptask` (

      `runClientId` int(11) NOT NULL AUTO_INCREMENT,

      `tpid` varchar(11) DEFAULT NULL,

      `isRunning` int(11) unsigned zerofill DEFAULT '00000000000',

      `runClientPCName` varchar(100) DEFAULT NULL,

      `runClientPCIP` varchar(50) DEFAULT NULL,

      `lastRunTime` datetime DEFAULT NULL,

      PRIMARY KEY (`runClientId`)

    ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8

     

    CREATE TABLE `testcases` (

      `id` int(11) NOT NULL AUTO_INCREMENT,

      `p_id` int(11) NOT NULL,

      `test_name` varchar(255) NOT NULL DEFAULT '',

      `Html_open` varchar(10) DEFAULT 'true',

      `checked` varchar(8) DEFAULT NULL,

      `testModule_name` varchar(255) NOT NULL DEFAULT '',

      `test_desc` varchar(255) DEFAULT NULL,

      `testdataParas` varchar(255) DEFAULT NULL,

      `testdata_isexist` varchar(10) DEFAULT NULL,

      `isTestCase` tinyint(1) DEFAULT '0',

      `compFolderid` int(11) DEFAULT NULL,

      PRIMARY KEY (`id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8

     

    CREATE TABLE `testcases_steps` (

      `Id` int(11) NOT NULL AUTO_INCREMENT,

      `TestcaseID` varchar(100) DEFAULT NULL,

      `ElementId` varchar(50) DEFAULT NULL,

      `Command` varchar(255) DEFAULT NULL,

      `InParas` varchar(255) DEFAULT NULL,

      `OutParas` varchar(255) DEFAULT NULL,

      `StepOrder` int(11) DEFAULT NULL,

      `compFolderid` int(11) DEFAULT NULL COMMENT '测试步骤中插入的操作组件的父级id',

      `compid` int(11) DEFAULT NULL COMMENT '测试步骤中插入的操作组件的id',

      PRIMARY KEY (`Id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=679 DEFAULT CHARSET=utf8

     

    CREATE TABLE `tc_ele_command` (

      `id` int(11) NOT NULL AUTO_INCREMENT,

      `commandName` varchar(50) CHARACTER SET utf8 DEFAULT NULL,

      `commandPara` varchar(60) CHARACTER SET utf8 DEFAULT NULL,

      PRIMARY KEY (`id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

     

    CREATE TABLE `testcase_runround` (

      `id` int(255) NOT NULL AUTO_INCREMENT,

      `test_round_name` varchar(255) DEFAULT NULL,

      `testset_list` varchar(255) DEFAULT NULL,

      `tcfolder_tc_list` varchar(2000) DEFAULT NULL,

      `testcase_list` varchar(1000) DEFAULT NULL,

      `round_desc` varchar(25) DEFAULT NULL,

      `testplan_file` varchar(255) DEFAULT NULL,

      `runningTestPlanUrl` varchar(100) DEFAULT NULL,

      `browserRuningDrivers` varchar(20) DEFAULT NULL,

      `latelyRuningTime` datetime DEFAULT NULL,

      `onlyOneRuning_tc_list` varchar(255) DEFAULT NULL,

      `project_name` varchar(255) DEFAULT NULL,

      `project_version` varchar(255) DEFAULT NULL,

      `project_id` varchar(255) DEFAULT NULL,

      PRIMARY KEY (`id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8

     

     

    CREATE TABLE `testreporter` (

      `Id` int(11) NOT NULL AUTO_INCREMENT,

      `testplanId` varchar(255) NOT NULL DEFAULT '',

      `testcaseList` varchar(255) DEFAULT NULL,

      `testcasedataGroup` tinyint(3) DEFAULT NULL COMMENT '--无用列',

      `tpRunedtcs` varchar(100) DEFAULT NULL COMMENT '此轮执行的测试用例',

      `tpRunnedHistoryId` bigint(50) DEFAULT NULL COMMENT '运行历史id,后续自动清除大于2天的报告',

      `onTime` datetime DEFAULT NULL COMMENT '发生的时间',

      PRIMARY KEY (`Id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8

     

     

    CREATE TABLE `tprunnedhistory` (

      `id` int(11) NOT NULL AUTO_INCREMENT,

      `tpId` varchar(255) DEFAULT NULL,

      `tpRunnedHistoryId` bigint(50) DEFAULT NULL,

      `willRunningTestcaseList` varchar(1000) DEFAULT NULL,

      `runPassedTc_count` int(11) DEFAULT '0',

      `runPassedTc` varchar(1000) DEFAULT '',

      `runFailedTc` varchar(1000) DEFAULT '',

      `tpRunnedHistoryNotes` varchar(100) DEFAULT NULL,

      `onTime` datetime DEFAULT NULL,

      PRIMARY KEY (`id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8

     

    CREATE TABLE `tcrunnedhistory` (

      `id` int(11) NOT NULL AUTO_INCREMENT,

      `tpId` varchar(255) DEFAULT NULL,

      `tpRunnedHistoryId` bigint(50) DEFAULT NULL,

      `willRunningTestcaseList` varchar(1000) DEFAULT NULL,

      `runPassedTc_count` int(11) DEFAULT '0',

      `runPassedTc` varchar(1000) DEFAULT '',

      `runFailedTc` varchar(1000) DEFAULT '',

      `tpRunnedHistoryNotes` varchar(100) DEFAULT NULL,

      `onTime` datetime DEFAULT NULL,

      PRIMARY KEY (`id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8

     

    四、插入基础数据

    INSERT INTO `pagesobject`(P_id, test_name) VALUES(1, '根目录');

     

    INSERT INTO `testcases`(p_id, test_name) VALUES(0, '根目录');

     

     

    五、安装Apache

    安装gcc-c++

    [root@localhost mnt]# yum install gcc-c++

     

    安装apr

    [root@localhost mnt]# tar -xvzf apr-1.5.2.tar.gz

    [root@localhost mnt]# cd apr-1.5.2

    [root@localhost apr-1.5.2]# ./configure --prefix=/usr/local/apr

    [root@localhost apr-1.5.2]# make && make install

     

    安装apr-util

    [root@localhost mnt]# tar -xvzf apr-util-1.5.4.tar.gz

    [root@localhost apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

    [root@localhost apr-util-1.5.4]# make && make install

     

     

    安装pcre

    [root@localhost mnt]# tar -xvzf pcre-8.36.tar.gz

    [root@localhost mnt]# cd pcre-8.36

    [root@localhost pcre-8.36]# ./configure --prefix=/usr/local/pcre

    ……

    [root@localhost pcre-8.36]#make && make install

     

    安装Apache

    [root@localhost tmp]# tar -xzvf httpd-2.4.16.tar.gz

    [root@localhost tmp]# cd httpd-2.4.16

    [root@localhost httpd-2.4.16]# ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr  --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre

    [root@localhost httpd-2.4.16]# make && make install

     

     

    可在httpd.conf中进行一些自定义配置

    [root@localhost httpd-2.4.16]# vim /usr/local/apache/conf/httpd.conf

     

     

    六、配置与启动Apache

    编辑httpd.conf,设置'ServerName':把ServerName www.example.com:80改成自己需要的(可先注释,然后新增一行

    [root@localhost httpd-2.4.16]# vim /usr/local/apache/conf/httpd.conf



    如果未配置,启动时会报如下错误:

    AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message

     

    启动

    [root@localhost httpd-2.4.16]# /usr/local/apache/bin/apachectl -k start

     

    注:停止Apache

    [root@localhost httpd-2.4.16]# /usr/local/apache/bin/apachectl -k stop

     

    防火墙开放80端口

    [root@localhost tmp]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT

    [root@localhost tmp]# services iptables save

    -bash: services: command not found

    [root@localhost tmp]# service iptables save

    iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]

    [root@localhost tmp]# service iptables reload

    iptables: Trying to reload firewall rules:                 [  OK  ]

    注意:不开放端口的话,访问http://192.168.30.80,可能会访问不了

     

    浏览器访问http://192.168.30.80,可以访问了,OK

     

    参考连接:

    http://httpd.apache.org/docs/current/

     

    七、安装php

    安装函数依赖模块

    [root@localhost tmp]# rpm -iUvh php-common-5.3.3-40.el6_6.x86_64.rpm

    warning: php-common-5.3.3-40.el6_6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY

    Preparing...                ########################################### [100%]

       1:php-common             ########################################### [100%]

    [root@localhost tmp]# rpm -iUvh php-mbstring-5.3.3-40.el6_6.x86_64.rpm

    warning: php-mbstring-5.3.3-40.el6_6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY

    Preparing...                ########################################### [100%]

       1:php-mbstring           ########################################### [100%]

    [root@localhost tmp]#

     

    安装libxml2

    [root@localhost mnt]# tar -xvzf libxml2-2.6.27.tar.gz

    [root@localhost mnt]# cd libxml2-2.6.27

    [root@localhost libxml2-2.6.27]# ./configure --prefix=/usr/local/libxml12

    [root@localhost libxml2-2.6.27]# make && make install

     

    注:

    1.如果mysql是源码包安装的,加--with-mysql=mysql_installation_path

    2.如果未安装libxml2,可能报如下错误:

    configure: error: xml2-config not found. Please check your libxml2 installation.

     

    安装php

    [root@localhost mnt]# tar -xvzf php-5.6.12.tar.gz

    [root@localhost tmp]#cd php-5.6.12

    [root@localhost php-5.6.12]#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-libxml-dir=/usr/local/libxml12/ --with-mysql --enable-mbstring=all

     

    注:

    1、如果mysql是以rpm宝的形式安装的,直接--with-mysql,如果是源码包安装的,--with-mysql=mysql_installation_path,,笔者实践发现,没加--with-mysql,安装后不能加载mysql.dll

    2、带--enable-mbstring=all是因为提供PHP框架需要使用该模块

     

     

    说明:编译php时,可能还会遇到如下错误

    Sorry, I cannot run apxs. ***

    Sorry, I cannot run apxs. Possible reasons follow:

    1. Perl is not installed

    2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs

    3. Apache was not built using --enable-so (the apxs usage page is displayed)

     

    解决方法:将apxs所在目录(例中为/usr/local/apache/bin/)添加到PATH环境变量,并使环境变量生效即可。

     

     

    八、配置php

    [root@localhost php-5.6.12]# cp php.ini.dist /usr/local/php/lib/php.ini

    注:如果没有php.ini.dist 则把php.ini-development php.ini-production中的任何一个重命名为php.ini.dist即可

     

    配置 httpd.conf apache支持PHP

    # vim /usr/local/apache/conf/httpd.conf

     

    找到 AddType application/x-gzip .gz .tgz ,然后添加如下带背景颜色的内容(.前面有空格)

     

    #################Added by laiyu##################

        AddType application/x-httpd-php .php

        AddType application/x-httpd-php-source .phps

        #################################################

        #AddType application/x-gzip .tgz

     

    修改改配置文件php.ini 

    首先要确保php.iniextension_dir php扩展所在目录,然后找到如下内容

    ;extension=php_mysql.dll

    ;extension=php_mysqli.dll

     

    把前面的分号去掉,改成如下,保存,重启Apache

    extension=php_mysql.dll

    extension=php_mysqli.dll

     

    注意:如果这里不修改,可能会导致无法连接mysql,类似如下,查看apahce日志,

    [root@localhost logs]# cat error.log

    [Sat Aug 22 01:11:50.502345 2015] [:error] [pid 28567:tid 140674563237632] [client 192.168.40.74:64189] PHP Fatal error:  Call to undefined function mysql_connect() in /usr/local/apache/htdocs/1dcq/connect.php on line 9, referer: http://192.168.40.80/1dcq/framework/pagesObject.php

     

     

    找到如下代码,去掉前面的分号,即取消注释,加载该模块。

    ; extension=php_mbstring.dll

     

    找到display_errors = On,修改为display_errors = Off

     

    重启Apache

    [root@localhost php-5.6.12]# /usr/local/apache/bin/apachectl stop

    [root@localhost php-5.6.12]# /usr/local/apache/bin/apachectl start

     

    测试php是否成功安装

    写一个php测试页info.php,放到Apachehtdocs目录下。


     

    在浏览器中输入:服务器地址/info.php,如:http://192.168.30.80/info.php

    如果可看到php版本,系统等相关信息则表示成功了



     

    参考连接:

    http://php.net/manual/zh/install.unix.apache.php

     

    九、部署php代码文件

    安装好后,可以把PHP代码“framework.zip”解压源码“framework.zip”解压,放入到/usr/local/apache/htdocs/目录下,编辑connect.php,进行相关配置

    [root@localhost tmp]# unzip framework.zip

    [root@localhost tmp]# mv 1dcq/ /usr/local/apache/htdocs/

    访问查看
    Linux <wbr>CentOS <wbr>6.5 <wbr>+ <wbr>Apache <wbr>+ <wbr>Mariadb <wbr>+ <wbr>PHP环境搭建

  • 相关阅读:
    裸裸的spfa~嘿嘿嘿!
    睡前1小时数学系列之-整除
    拓扑排序1.奖金
    拓扑排序
    SCU 1095运送物资(最短路)
    POJ1158 城市交通Traffic lights IOI 1999 (最短路)
    POI0109 POD (最短路)
    HN0I2000最优乘车 (最短路变形)
    FOJ1205 小鼠迷宫问题 (BFD+递推)
    CJOI 05新年好 (最短路+枚举)
  • 原文地址:https://www.cnblogs.com/shouke/p/10157846.html
Copyright © 2011-2022 走看看