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

相关推荐

  • 自建repo软件仓库

    近期主要使用的aliyun的源,主要会用到centos6、zabbix、epel和xen等,由于网络质量不佳,考虑到自建软件仓库 第一步,删除系统自导的源,新建ali.repo,将常用的几个源地址加入 # rm /etc/yum.repos.d/*.repo -fr # vim /etc/yum.repos.…

    Linux干货 2016-05-19
  • 细数Linux发行版

    什么是Linux 广义上讲:Linux内核+应用程序狭义上讲:Linux内核  > Linux内核指的是我们通常所说的Kernel,主要用于负责系统调用、进程管理、内存管理、文件系统管理等功能。  应用程序指的是由GNU组织提供的开源的、通用的应用程序,如gcc、glibc、vi等。 我们平常所说的Linux,通常指广义层面上的Li…

    Linux干货 2017-08-30
  • DHCP及自动化安装Linux

    主机IP配置: 静态指定 静态IP 动态获取: bootp:bootprotocol MAC与IP一一静态对应 DHCP: Dynamic Host Configuration Protocol 动态主机配置协议基于UTP协议 主要用途:自动化分配IP地址,实现集中管理,解决IP地址不足的问题。 DHCP的4种报文 DHCP DISCOVER OFFER R…

    2017-09-18
  • 第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别统计这两类用户的个数;通过字符串比较来实现;    #!/bin/bash     echo "可登录类型有有$(awk -F: '/[^\<nologin\&gt…

    Linux干货 2017-02-07
  • Linux LVM介绍及管理

    什么是LVM? LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,用来提高磁盘分区管理的灵活性。系统管理员可以通过LVM轻松的管理磁盘分区,如:将若干个磁盘分区或物理磁盘连接为一个整块的卷组 (volumegroup),形成一个存储池。管理员可以…

    Linux干货 2016-08-30
  • N25_第四周作业(补)

    1、复制/etc/skel目录到/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@EASTED tmp]# cp -r /etc/skel/ /home/tuser1/ [root@EASTED tmp]# cp …

    Linux干货 2017-01-02

评论列表(1条)

  • stanley
    stanley 2016-04-05 22:27

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