LAMP 基于httpd 2.4

安装前准备

说明

操作系统:CentOS 7 64

Apache 版本:httpd-2.4.6-40.el7.centos.x86_64

httpd服务器ip:192.168.1.4

 

1.  配置好IPDNS 、网关,确保使用远程连接工具能够连接服务器

2.       配置防火墙,iptables –F 清理防火墙规则或者关闭iptables

3.       关闭SELINUX或setenforce 0  #立即生效(实际是宽容模式)

 

安装配置

1. 安装Apache,php,Mariadb yum安装会自动解决依赖关系

yum -y install httpd php php-mysql mariadb-server

2. 启动httpd 服务,并测试页面是否显示正常

systemctl start httpd.service

systemctl start mariadb.service

netstat -nltp

blob.png

blob.png

3. 数据库安全初始化

mysql_secure_installation

blob.png

配置虚拟主机

编辑主配置文件/etc/httpd/conf/httpd.conf,注释掉主服务器文档目录,启动虚拟主机的配置文件的目录

blob.png

blob.png

blob.png

blob.png

1. 配置虚拟主机pma.stu.com

mv /etc/httpd/conf.d/welcome.conf welcome.conf.bak

mkdir -pv /www/htdocs

cd /etc/httpd/

vi conf.d/vhosts1.conf

    <VirtualHost 192.168.1.4:80>
        ServerAdmin admin@stu.com
        DocumentRoot "/www/htdocs"
        ServerName pma.stu.com
        ErrorLog "logs/stu.com-error_log"
        CustomLog "logs/stu.com-access_log" common
     
    </VirtualHost>
 
    <Directory "/www/htdocs">
        Options Includes ExecCGI FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

blob.png

2. 测试php和数据库的连通性

vi /www/htdocs/index.php

    <?php    
            $conn = mysql_connect('127.0.0.1','root','123456');
            if ($conn)
                echo "OK";
            else
                echo "Failure";
            mysql_close();
            phpinfo();
    ?>

     

blob.png

3. 安装配置phpadmin

yum -y install php-mbstring

systemctl reload httpd.service

unzip phpMyAdmin-4.4.15.5-all-languages.zip

cp -a phpMyAdmin-4.4.15.5-all-languages /www/htdocs/      #放到网站目录

cd /www/htdocs/

in -sv phpMyAdmin-4.4.15.5-all-languages phpadmin    #创建软连接

cd phpadmin/

cp config.sample.inc.php config.inc.php

tr -d 'a-zA-Z0-9' < /dev/urandom | head -20 | md5sum            #生成一段随机数

vi config.inc.php

blob.png

修改数据库root 的密码

    mysql  -uroot -p    
    SET PASSWORD FOR 'root'@'localhost'=PASSWORD('liangkai');
    SET PASSWORD FOR 'root'@'127.0.0.1'=PASSWORD('liangkai');
    FLUSH PRIVILEGES;

然后登陆页面查看

blob.png

blob.png

4. 为虚拟主机提供https协议访问

    CA服务器:192.168.1.7

    httpd服务器:192.168.1.4

a.       生成密钥对 cakey.pem,并创建所需文件(在CA服务器上)

(umask 077;openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)

touch index.txt

echo 01 > serial

b.  开始申请CA机构的根证书,20年x509类型(在CA服务器上)

openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 7300

blob.png

c.  在httpd服务器上,生成自己的私钥key与csr证书请求

 cd /etc/httpd/

mkdir ssl

cd ssl/

(umask 077;openssl genrsa -out httpd.key 1024)  #生成自己的私钥

openssl req -new -key httpd.key -out httpd.csr

 

blob.png

d.  把证书传送给CA

scp httpd.csr root@192.168.1.7

blob.png

e.       CA上签署证书,并将证书发还给请求者(在CA服务器上)

ca -in /tmp/httpd.csr -out certs/pma.stu.com.crt -days 365

scp certs/pma.stu.com.crt 192.168.1.4:/etc/httpd/ssl

blob.png

blob.png

f.  https服务器要支持SSL 需要安装这个mod_ssl模块,并重启httpd服务

yum -y install mod_ssl

     cd /etc/httpd/conf.d/

      vi ssl.conf

    <VirtualHost 192.168.1.4:443>   #修改这行IP
    DocumentRoot "/www/htdocs"  #注释去掉修改
    ServerName  pma.stu.com     #注释去掉修改
    #   Server Certificate:
    SSLCertificateFile /etc/httpd/ssl/www1.stu.com.crt  #修改证书文件路径
    #   Server Private Key:
    SSLCertificateKeyFile /etc/httpd/ssl/httpd.key      #这个证书私钥

systemctl restart httpd.service

    g.  测试结果,先把CA服务器上的公钥证书下载到客户机导入到游览器受信任的根证书颁发机构里面,然后访问https://pma.stu.com/phpadmin

blob.png

5. 配置第二个虚拟主机wp.stu.com并且安装wordpress

vi /etc/httpd/conf.d/vhosts1.conf

blob.png

然后安装配置wordpress

unzip wordpress-4.4.2-zh_CN.zip

cp -a wordpress /www/htdocs/

cd /www/htdocs/wordpress/

cp wp-config-sample.php wp-config.php

vi wp-config.php

blob.png

创建上面定义的数据库,然后授权

    CREATE DATABASE wpdb;    
    GRANT ALL ON wpdb.* TO 'wpuser'@'localhost' IDENTIFIED BY 'wppasswd';
    GRANT ALL ON wpdb.* TO 'wpuser'@'127.0.0.1' IDENTIFIED BY 'wppasswd';
    FLUSH PRIVILEGES;

在游览器访问 wp.stu.com

blob.png

 

原创文章,作者:liangkai,如若转载,请注明出处:http://www.178linux.com/13850

(0)
liangkailiangkai
上一篇 2016-04-05
下一篇 2016-04-05

相关推荐

  • linux文件权限管理和用户,组管理常用命令应用实例

    用户和组概念简述 用户一般指使用计算机的人,GNU/linux通过用户和用户组实现对计算机的文件访问和设备使用控制。 用户分类1.管理员root(类似皇帝,权力最大)2.普通用户:分为系统用户和普通登录用户。系统用户不登录,常用于发起一些进程提供服务,防止进程被劫持带来的风险,所以尽量减少以root身份发起进程对外提供服务。3.用户标识UID。管理员的UID…

    2017-10-05
  • N25-第11周博客作业

    1、详细描述一次加密通讯的过程,结合图示最佳。 第一步:他们需要实现协商好对称加密算法,单向加密算法,公钥加密算法,交换公钥等。 第二步:B用户想要将数据传给A,首先需要使用单向加密算法取出数据的特征码,并用自己的私钥对这段特征码进行加密(数字签名),B用户生成临时对称密钥,并用对称密钥加密整段数据,B用户使用 A用户的公钥加密一次性对称密钥,附加在整段数据…

    Linux干货 2017-05-21
  • bash编程初体验(一)

    bash编程初体验(一) 认识bash编程 变量与赋值 算术与逻辑运算 条件测试与退出状态 认识bash编程 Bash(GNU Bourne-Again Shell)是许多Linux发行版的默认Shell,我们要认识的bash中,就是在bash的环境下的一种编程。 众所周知,程序=指令+数据,由此也决定了两种不同的编程风格,过程过与对象式; 过程式:以指令为…

    Linux干货 2016-08-15
  • linux发展史-

    前言: 人类文明的进步伴随着战争,战争留下的产物也是非常伟大的。 最初用于战争的通电钢铁,如今以进入人们生活。 而它的附带产物如今也是变得妙不可言。 本文简要说明操作系统的发展过程,以及该大树下一些分支。         简 述   Linux是诞生与UNIX下的一款操系统,有着安全稳定的文件系统,…

    Linux干货 2016-10-19
  • Linux下的文件管理系统

    一、文件系统的FHS标准     因为Linux的属于开源系统,开发人员多,为了统一开发标准,Linux有一个文件系统标准,也就是FHS(Filesystem HierarchyStandard)标准。有了这个标准,那些独立的软件开发商、系统开发人员以及系统的使用者就能方便的在系统上操作。 二、文件系统  &…

    Linux干货 2016-08-02
  • 第三周

    作业

    2017-12-15

评论列表(1条)

  • stanley
    stanley 2016-04-05 22:27

    样式建设使用markdown, 会使文章更上一个档次