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 17:28
下一篇 2016-04-05 21:24

相关推荐

  • mariadb的主从复制、主主复制、半同步复制

    主从服务器的时间要同步,数据库版本最好是一致的,以免造成函数处理、日志读取、日志解析等发生异常。 以下三个主从复制的设置是独立的。 注意防火墙和selinux的影响。 1、简单主从复制的实现 (1)主服务器的配置 1)安装mariadb-server [root@localhost ~]# yum -y install…

    Linux干货 2016-11-21
  • iptables 初识

    iptables 包过滤性防火墙     iptables是位于用户空间,是防火墙管理配置规则的工具。     iptables的作用:用来添加,删除,管理netfilter规则。     Netfilter是位于内核中真正的防火墙,由5个钩子组成,…

    Linux干货 2016-06-01
  • ☞CentOS安装程序{ 源码包安装;rpm包安装;}&&恢复rpm功能

    ☞CentOS安装程序{ 源码包安装;rpm包安装;}&&恢复rpm功能 本文是继上一篇文章“CentOS程序安装的3种方式{ 源码包安装 | rpm包安装 | yum安装;}”的补充,上篇文章http://www.178linux.com/38812主要介绍了yum安装软件的方法以及归纳了详细的yum命令。本文继续介绍基于本地file、远程…

    Linux干货 2016-08-24
  • N26 – 第三周作业

    1、列出当前系统上所有已登录的用户的用户名,同一用户登录多次只显示一次     ~]# who -u |cut -d ' ' -f1|uniq -u 2、最后登录到当前系统的用户的相关信息     ~]#id $(last | h…

    Linux干货 2017-01-03
  • Linux常见小知识点

    什么是Linux? Linux是一款支持多任务,多线程,多用户的类Unix系统 Linux常见的发行版本 Redhat  Linux   Linux发行版中比较重要的一个版本,多用于企业,由Redhat公司提供收费技术支持和更新,其衍生版本有centos为免费版本 Debain linux      系统分为…

    Linux干货 2017-03-26
  • Docker 实例

    1、Docker 安装 Nginx 方法一:通过 Dockerfile构建 创建Dockerfile 首先,创建目录nginx,用于存放后面的相关东西。 # mkdir -p nginx/www nginx/logs nginx/conf www目录将映射为nginx容器配置的虚拟目录 logs目录将映射为nginx容器的日志目录 conf目录里的配置文件将…

    2018-01-22

评论列表(1条)

  • stanley
    stanley 2016-04-05 22:27

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