更换网站主页目录

1.在httpd.conf文件中更改documentroot为新的路径,并为其相应的路径给与相应的权限。

Documentroot "/www/http"
<Directory "/www/http">
        Allowoverride None
        Require all granted
</Directory>

2.创建上面的相应路径

[root@localhost ~]# mkdir /www/http/

3.在相应的路径中创建一个主页文件,主页文件名格式与主配置文件中给出的格式相对应,或者在主配置文件中添加也可以

<IfModule dir_module>     #这个是主配置文件中匹配网站首页的模块
    DirectoryIndex index.html index.htm #这个index.htm是我后来加的
</IfModule>

[root@localhost ~]# echo "中心主机配置" > /www/http/index.html

4.网站更换完首页打不开或者还是显示欢迎页的话要关闭selinux

[root@localhost ~]# setenforce 0

开放个人主页

1.在主配置文件中添加相对应的模块

<IfModule mod_userdir.c>       #添加这个模块配置信息
        UserDir enable               #开启个人网页功能
        UserDir public         #这个是个人网页存放在每个人家目录下哪个文件夹内
</IfModule>
<Directory "/home/*/public">   #对个人网页的限制
        AllowOverride None
        Require all granted
</Directory>

2.对应上面的路径,在每个人的家目录下创建public文件夹,并添加一个相应的首页

[root@localhost ~]# mkdir /home/admin/public
[root@localhost ~]# echo "admin主页" > /home/admin/public/index.html

 对某目录增加密码访问

1.建立密码文件

[root@localhost conf]# htpasswd -c /etc/httpd/password admin   #-c代表新建
New password:
Re-type new password:
Adding password for user admin
[root@localhost conf]# htpasswd /etc/httpd/password lee    #再建一个用户
New password:
Re-type new password:
Adding password for user lee

2. 编辑配置文件

<Directory "/var/www/public">                #在某个限制文件内添加
    Options None
    AllowOverride None
    authuserfile "/etc/httpd/password"     #指定密码文件
    authname "need password"              #密码框提示内容
    authtype basic                         #基本认证类型
    require user admin                    #刚刚添加的两个用户,这里只允许admin登陆
</Directory>

 基于主机名的虚拟主机

1.在conf.d目录下新建一个虚拟主机的文件,以.conf结尾

<virtualhost 172.17.148.255>
       Documentroot "/www/a"
       servername www.a.com
<directory "/www/a">
       allowoverride none
       require all granted
</directory>
</virtualhost>

<virtualhost 172.17.148.255>
        Documentroot "/www/b"
        servername www.b.com
<directory "/www/b">
        allowoverride none
        require all granted
</directory>
</virtualhost>

<virtualhost 172.17.148.255>
        Documentroot "/www/c"
        servername www.c.com
<directory "/www/c">
        allowoverride none
        require all granted
</directory>
</virtualhost>

2.新建对应的目录及首页

[root@localhost httpd]# ls /www/{a,b,c}
/www/a:
index.html

/www/b:
index.html

/www/c:
index.html

 基于端口号的虚拟主机

1.同样在conf.d目录下创建虚拟主机文件,以.conf结尾

<virtualhost 172.17.148.255:8088>
        Documentroot "/www/b"
        servername www.b.com
<directory "/www/b">
        allowoverride none
        require all granted
</directory>
</virtualhost>

<virtualhost 172.17.148.255:8089>
        Documentroot "/www/c"
        servername www.c.com
<directory "/www/c">
        allowoverride none
        require all granted
</directory>
</virtualhost>

2.在主配置文件conf/http.conf中添加监听端口

Listen 80
Listen 8088
Listen 8089

 网页的访问控制

在需要限制访问的页面路径下添加策略

<Directory "/www/http/acl">                #针对这个目录的限制
        Allowoverride NONE
        options NONE
        require all denied                      #拒绝所有人
        require all granted                     #允许所有人
        require ip 172.17.148.112          #允许单个ip
        require ip 172.16 172.18            #允许172.16和172.18地址段
        require no ip 172.17.148.112      #拒绝单个ip
<Files "xianzhi.htm">                         #针对上面那个目录内,限制这个文件的访问
        require all denied
       require ip 172.17.148.112
</Files>
<Files "*.avi">                                 #针对上面那个目录,限制以.avi结尾的文件
        require all denied
</Files>
</Directory>

<Files "xianzhi.htm">                       #因为不在目录的限制内,所以这是限制任何目录下的这个文件
       require all denied
       require ip 172.17.148.112
</Files>

显示Apache服务器状态

在主配置文件中添加

<Location /server-status>                    #代表在根下添加server-status,这里的字符串是随意的,在网页中打开时相对应路径就行
        sethandler server-status
        require all denied                        #因为状态信息属于重要文件
        require ip 172.17.148.112            #所以只能有权限的人才能访问
</Location>

开始https服务

1.向CA申请证书,方便起见在httpd下新建个ssl目录,将证书和私钥都放在ssl里。申请证书参考https://www.cnblogs.com/forlive/p/9134486.html

[root@localhost httpd]# ls /etc/httpd/ssl/
httpd.crt  httpd.key

2.安装ssl模块

[root@localhost httpd]# yum install mod_ssl -y

3.安装完成后,会在conf.d下生成一个ssl.conf的子配置文件

[root@localhost httpd]# ls /etc/httpd/conf.d/
autoindex.conf  php.conf  README  ssl.conf  userdir.conf  welcome.conf

4.编辑ssl.conf文件,最简单需要修改的地方就是下面几个,其他都默认即可

DocumentRoot "/var/www/html"           #设置主目录
ServerName www.example.com:443     #设定主机名
SSLEngine on                           #开启ssl功能
SSLCertificateFile /etc/httpd/ssl/httpd.crt    #指明刚刚申请的证书
SSLCertificateKeyFile /etc/httpd/ssl/httpd.key   #指明证书的私钥

5.浏览器测试https即可

httpd2.4的更多相关文章

  1. 基于centOS6.7搭建LAMP(httpd-2.4.18+mysql-5.5.47+php-5.6.16)环境

    首先确保系统可以联网.设置IP地址以及虚拟机安装linux在此略过.本文采用centos6.7 64位minimal版.php5.6.16.httpd-2.4.18.mysql-5.5.47版搭建la ...

  2. httpd-2.2 配置及用法完全攻略

    导读 apache是一款稳定的流行的web软件,是linux操作系统中默认的web管理软件.在RHEL/Centos系列中可以用rpm直接进行安装,服务名为httpd.apache有很多设置和调优 的 ...

  3. Lamp 安装(CentOS6.6, php-5.4.39, httpd-2.4.12, mysql-5.6.24)

    软件版本: pcre-8.36.tar.gzapr-1.5.1.tar.gzapr-util-1.5.4.tar.gzhttpd-2.4.12.tar.bz2 mysql-5.6.24.tar.gz ...

  4. 在CentOS6.7操作系统上编译安装httpd2.4

    功能描述: 在CentOS6.7操作系统上,编译安装apache服务,实现定制功能等 一.安装前提 1)安装编译httpd需要的软件包 [root@bqe6tewv41kx ~]#  yum -y i ...

  5. window7 下 安装 apache24(httpd-2.4.10-x86-r2)加 php5.6(php-5.6.4-Win32-VC11-x86)加yaf(php_yaf-2.3.3-5.6-ts-vc11-x86)整合

    window7 下 安装 apache24(httpd-2.4.10-x86-r2)加 php5.6(php-5.6.4-Win32-VC11-x86)加yaf(php_yaf-2.3.3-5.6-t ...

  6. Windows2012中安装PHP-5.6.20+Apache httpd2.4.18+Composer+Laravel+MySQL5.7

    下载软件包 PHP:  http://windows.php.net/downloads/releases/php-5.6.20-Win32-VC11-x64.zip Apache httpd:  h ...

  7. CentOS 6.8编译安装httpd2.2.31+MySQL5.6.31+PHP5.3.27

    CentOS 6.8编译安装httpd2.2.31+MySQL5.6.31+PHP5.3.27   说明:   操作系统:CentOS 6.8 32位 准备篇: 一.系统约定    软件源代码包存放位 ...

  8. centos 6 编译安装httpd-2.4

    centos6 yum安装的apr版本已经不适用httpd-2.4版本了.所以,需要源码编译apr以及apr-util 1. 下载源码: cd /usr/local/src/ wget http:// ...

  9. PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战

    原文 PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战 环境配置:   程序准备: PHP windows版本下载地址: http://windows.php. ...

  10. Linux 安装 httpd2.4.16

    假设: apr安装在: /opt/httpd/apr apr-util安装在 /opt/httpd/apr-suite/apr-util apr-iconv安装在/opt/httpd/apr-suit ...

随机推荐

  1. 提升RabbitMQ消费速度的一些实践

    RabbitMQ是一个开源的消息中间件,自带管理界面友好.开发语言支持广泛.没有对其它中间件的依赖,而且社区非常活跃,特别适合中小型企业拿来就用.这篇文章主要探讨提升RabbitMQ消费速度的一些方法 ...

  2. Python中yield解析

    小探yield 查看 python yield 文档 yield expressions: Using a yield expression in a function's body causes t ...

  3. CodeForces round 520 div2

    A:A Prank 题意:给定一个递增序列, 问最多能删除多少个连续数字,要求删除数字之后能还原成原来的数列. 题解:直接找就好了,为了方便可以使得第0个数字为0, 第n+1个元素为1001 代码: ...

  4. js中的兼容问题汇总

    在使用js的过程中,往往会发现关于IE浏览器的兼容问题,当然微软现在自己也打算抛弃IE,推出了edge浏览器,对于前端来说是个好消息. 但IE的用户占比仍然不容小觑,因此这里整理下常见的几个兼容问题附 ...

  5. vim中处理重定向文件中的^H和^M

    做实验的时候会把日志重定向写到文件中,方便以后查看.但是用vim打开之后出现很多^H和^M,就像乱码一样.如图所示: 现在尝试在vim中解决这个问题. 替换^H 在vim中输入命令,表示把^H替换成空 ...

  6. 【Hystrix】实现服务隔离和降级

    一.背景 1.1 服务熔断 1.2 服务降级 1.3 服务隔离 1.4 总结 二.使用Hystrix实现服务隔离和降级 2.1 Hytrix 简介 2.2 线程池方式 2.3 信号量 三.项目搭建 3 ...

  7. java架构师视频教程 内含activemq+jvm+netty+dubbo

    目录: 架构师视频教程包含activemq jvm netty dubbo 0分布式项目实战所有视频(分布式项目视频)互联网架构师第二期-视频部分互联网架构师第二期-资料部分1.Netty快速入门教程 ...

  8. lambda表达式分类

    public class StreamTest { public static void main(String[] args) { createStream(); getForEach(); get ...

  9. JSP静态include和动态include的区别

    静态include是指令元素.include指令的语法格式:<%@ include file="filename" %>.include指令的作用是在JSP页面中静态包 ...

  10. elk安装和使用

    elk安装和使用 使用的版本都是5.2.0 elasticsearch-5.2.0安装 在官网 下载 elasticsearch tar包 解压安装 tar zxf elasticsearch-5.2 ...