更换网站主页目录

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. 学生管理系统 Python语言

    def show_student(): print(('*'*20).center(55)) print('1.添加学生信息'.center(50)) print('2.修改学生信息'.center( ...

  2. gym/102059/problem/I. Game on Plane SG函数做博弈

    传送门: 题意: 给定一个正n边形的点.双方轮流连点成线,要求所画的线不能与之前的线相交.当某个人连成一个回路,这个人就输了.问先手必胜还是后手必胜. 思路: SG函数,因为一条线相当于把图劈成了两半 ...

  3. HDU 4280 Island Transport(无向图最大流)

    HDU 4280:http://acm.hdu.edu.cn/showproblem.php?pid=4280 题意: 比较裸的最大流题目,就是这是个无向图,并且比较卡时间. 思路: 是这样的,由于是 ...

  4. HDU-2018多校7th-1011-Swordsman 附杜教fread代码

    HDU-6396 题意: 背景是打怪升级的故事,有k个不同属性的初始的能力值,每只怪物也有相同个数的能力值,你只能放倒k个能力值都比怪物大的,每放倒一个怪物,都可以得到相应的k个能力值. 思路: 根据 ...

  5. BZOJ4034 [HAOI2015]树上操作+DFS序+线段树

    参考:https://www.cnblogs.com/liyinggang/p/5965981.html 题意:是一个数据结构题,树上的,用dfs序,变成线性的: 思路:对于每一个节点x,记录其DFS ...

  6. CodeForces 522C Chicken or Fish?

    Chicken or Fish? 题意比较难理解. 需要注意的是 就算某个人抱怨了 但是的t[i]也是他最后选择的结果. 题解: 首先考虑没有r[i] = 1的情况. 直接记录t[i]=0的数目,最后 ...

  7. hdu 4081 Qin Shi Huang's National Road System(次小生成树prim)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4081 题意:有n个城市,秦始皇要修用n-1条路把它们连起来,要求从任一点出发,都可以到达其它的任意点. ...

  8. lightoj 1030-B - Discovering Gold (概率dp)

    题意:有一个直线的金矿,每个点有一定数量的金子:你从0开始,每次扔个骰子,扔出几点就走几步, 然后把那个点的金子拿走:如果扔出的骰子超出了金矿,就重新扔,知道你站在最后一个点:问拿走金 子的期望值是多 ...

  9. Play on Words UVA - 10129

    题目: Some of the secret doors contain a very interesting word puzzle. The team of archaeologists has ...

  10. 关于C语言\b \t \n及转义序列的理解

    转义序列 说明 \b 后退一格(Backspace) \t 水平制表(Tab=4个空格) \v 垂直制表 \r 回车(Enter) \f 换页 \a 发出鸣响 \n 换行 \" 输出/输入双 ...