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干货 2018-01-07
  • 编译安装dropbear

    ssh协议的另一个实现:dropbear 编译安装dropbear [root@centos6 ~]# tar xf dropbear-2013.58.tar.bz2  [root@centos6 ~]# cd dropbear-2013.58 [root@centos6&nbs…

    Linux干货 2016-09-28
  • linux时间设置、screen使用、命令分类、hash作用、命令引用及history命令

    一、 生产环境发现一台服务器系统时间产生偏差,造成服务异常 解决方法             a、 如果服务器硬件时间准备的话,可使用命令:~#] hwclock -s              将硬件时钟同步到系统 &…

    Linux干货 2016-08-02
  • CentOS 6系统启动流程

    Linux系统的组成 内核+根文件系统 内核功能:     进程管理、内存管理、文件系统管理、网络管理、安全功能、驱动程序 运行中的系统环境可分为两层:内核空间、用户空间     用户空间:应用程序(进程或线程)     内核空间:内核代码…

    Linux干货 2016-09-15
  • LAMP快速部署及LAMP组合深入讲解-1

      lamp php php: 脚本编程语言、嵌入到html中的嵌入式web程序开发语言;基于zend编译成opcode(二进制格式的字节码,重复运行,可省略编译环境) 一、PHP简介 PHP是通用服务器端脚本编程语言,其主要用于web开发以实现动态web页面,它也是最早实现将脚本嵌入HTML源码文档中的服务器端脚本语言之一。同时,php还提供了一…

    Linux干货 2017-06-04
  • 运维挖坑埋坑之旅—-413 Request Entity Too Large

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://nolinux.blog.51cto.com/4824967/1575160        好久没写博文了,天天忙的喘不过来气。最近是该总结总结前段时间的工作了,顺便缓解下这两天的霉…

    Linux干货 2016-08-15

评论列表(1条)

  • stanley
    stanley 2016-04-05 22:27

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