apache用户认证

PS:其实没有....用处的。。。

命令描述

htpasswd命令是Apache的Web服务器内置工具,用于创建和更新储存用户名、域和用户基本认证的密码文件。

命令语法

htpasswd [option] [参数]

命令选项

-c:=create,创建一个加密文件
-n:不更新加密文件,只将更新后的用户名密码显示在屏幕上
-m:使用MD5算法对密码进行加密(默认)
-d:使用CRYPT算法对密码进行加密
-p:不对密码进行加密,即明文密码
-s:使用SHA算法对密码进行加密
-b:在命令行一并输入用户名和密码,而不是根据提示输入密码
-D:删除指定用户

步骤如下

1,编辑虚拟主机配置文件

[root@localhost ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
DocumentRoot "/data/www/sdw.com"
ServerName sdw.com
ServerAlias www.example.com
<Directory /data/www/sdw.com> //指定认证的目录
AllowOverride AuthConfig //这个相当于打开认证的开关
AuthName "sdw.com user auth" //自定义认证的名字,作用不大
AuthType Basic //认证的类型,一般为Basic
AuthUserFile /data/.htpasswd //指定密码文件所在位置
require valid-user //指定需要认证的用户为全部可用用户
</Directory>
ErrorLog "logs/111.com-error_logo"
CustomLog "logs/111.com-access_log" common
</VirtualHost>

PS:在配置的时候最好把说明去除,以防报错

2,创建“httpd-vhosts.conf”中指定的密码文件

[root@dl-001 wwwroot]# /usr/local/apache2.4/bin/htpasswd -c -m /data/.htpasswd dl
New password:
Re-type new password:
Adding password for user dl
[root@dl-001 wwwroot]# cat /data/.htpasswd
dl:$apr1$QaOr7opI$AfAGBv1/utJws62.S/sbl.

PS:在“/data/.htpasswd”为用户dl创建一个使用MD5算法加密的密码文件。

3,重新加载

[root@dl-001 wwwroot]# /usr/local/apache2.4/bin/apachectl -t
Syntax OK
[root@dl-001 wwwroot]# /usr/local/apache2.4/bin/apachectl graceful


4,测试

使用curl进行测试
[root@dl-001 ~]# curl -x192.168.0.168:80 sdw.com
HTTP/1.1 401 Authorization Required //说明:因为生成了密码,所以在不指定用户名和密码的情况下会报401错误
Date: Wed, 20 Dec 2017 14:48:52 GMT
Server: Apache/2.2.34 (Unix) DAV/2 PHP/5.6.30
WWW-Authenticate: Basic realm="sdw.com user auth"
Content-Type: text/html; charset=iso-8859-1


域名跳转

描述

域名跳转类似于将网页重新指向另一个网站,但区别是域名跳转会将域名本身重新指向网站,而不使用HTML或脚本来进行重新指向。当域名被设置为跳转至另一网站,域名的地址将不会保留在浏览器的URL栏中,该栏显示的会是新页面的URL。如果您希望保留该栏中的URL,则需要使用隐形跳转。
把www.sdw.com 跳转到 sdw.com上

1.修改配置文件

<VirtualHost *:80>
ServerAdmin 1239666161@qq.com
DocumentRoot "/data/www/sdw.com"
ServerName sdw.com
ServerAlias www.sdw.com
<IfModule mod_rewrite.c>
#//需要mod_rewrite模块支持
RewriteEngine on

//打开rewrite功能

    RewriteCond %{HTTP_HOST} !^sdw.com$

#//定义rewrite的条件,主机名(域名)不是www.123.com满足条件
RewriteRule ^/(.*)$ http://sdw.com/$1 [R=301,L]
#//定义rewrite规则,当满足上面的条件时,这条规则才会执行
</IfModule>
<Directory /data/www/sdw.com>
AllowOverride AuthConfig
AuthName "123.com user auth"
AuthType Basic
AuthUserFile /data/.htpasswd
require valid-user
</Directory>
ErrorLog "logs/sdw.com-error_log"
CustomLog "logs/sdw.com-access_log" common
</VirtualHost>

2.修改配置

[root@localhost ~]# vim /usr/local/apache2/conf/httpd.conf

LoadModule rewrite_module modules/mod_rewrite.so //去掉#,以启用这个模块

3.测试结果

[root@localhost ~]# curl -x 192.168.0.168:80 www.sdw.com -I
HTTP/1.1 301 Moved Permanently
Date: Sat, 03 Mar 2018 15:11:58 GMT
Server: Apache/2.4.29 (Unix) PHP/5.6.30
Location: http://sdw.com/
Content-Type: text/html; charset=iso-8859-1


apache日志文件

通过优化 可以更加方便进行查询日志

1、Apache访问日志所在位置:

[root@localhost ~]# ls /usr/local/apache2/logs/
123test-access_log  abstest-error_log                   dummy-host2.example.com-error_log  error_log
123test-error_log   access_log                          dummy-host.example.com-access_log  httpd.pid
abctest-access_log  dummy-host2.example.com-access_log  dummy-host.example.com-error_log
[root@localhost ~]#cat  /usr/local/apache2/logs/123test-access_log     //common格式日志
192.168.204.128 - - [02/Mar/2018:19:06:28 +0800] "HEAD HTTP://linuxtestbak.com/ HTTP/1.1" 301 -
192.168.204.128 - - [02/Mar/2018:19:07:51 +0800] "GET HTTP://linuxtest.com/ HTTP/1.1" 200 28
192.168.204.128 - - [02/Mar/2018:19:09:05 +0800] "HEAD HTTP://www.linuxtestbak.com/ HTTP/1.1" 301 -
192.168.204.1 - - [02/Mar/2018:19:10:55 +0800] "GET / HTTP/1.1" 200 28
192.168.204.1 - - [02/Mar/2018:19:11:08 +0800] "GET / HTTP/1.1" 200 28

2、查看日志格式

[root@localhost ~]# vim /usr/local/apache2/conf/httpd.conf      //搜索LogFormat<IfModule log_config_module>## The following directives define some format nicknames for use with# a CustomLog directive (see below).#LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combinedLogFormat "%h %l %u %t \"%r\" %>s %b" common
说明:combined和common两种格式,默认使用common格式。## 3、更改日志的格式为combined
[root@localhost ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.confErrorLog "logs/123test-error_log"CustomLog "logs/123test-access_log" combined[root@localhost ~]# /usr/local/apache2.4/bin/apachectl -t
Syntax OK
## 4,做一些访问操作之后,再查看日志。
[root@localhost ~]#  /usr/local/apache2.4/bin/apachectl graceful[root@localhost ~]# cat  /usr/local/apache2.4/logs/123test-access_log
192.168.204.128 - - [02/Mar/2018:19:06:28 +0800] "HEAD HTTP://linuxtestbak.com/ HTTP/1.1" 301 -
192.168.204.128 - - [02/Mar/2018:19:07:51 +0800] "GET HTTP://linuxtest.com/ HTTP/1.1" 200 28
192.168.204.128 - - [02/Mar/2018:19:09:05 +0800] "HEAD HTTP://www.linuxtestbak.com/ HTTP/1.1" 301 -
192.168.204.1 - - [02/Mar/2018:19:10:55 +0800] "GET / HTTP/1.1" 200 28
192.168.204.1 - - [02/Mar/2018:19:11:08 +0800] "GET / HTTP/1.1" 200 28
192.168.204.1 - - [02/Mar/2018:19:20:16 +0800] "GET / HTTP/1.1" 200 28 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36"
192.168.204.1 - - [02/Mar/2018:19:20:19 +0800] "GET / HTTP/1.1" 200 28 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36"
192.168.204.1 - - [02/Mar/2018:19:20:27 +0800] "GET / HTTP/1.1" 200 28 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36"
192.168.204.128 - - [02/Mar/2018:19:20:39 +0800] "HEAD HTTP://www.linuxtestbak.com/ HTTP/1.1" 301 - "-" "curl/7.29.0"
192.168.204.128 - - [02/Mar/2018:19:20:45 +0800] "HEAD HTTP://www.linuxtestbak.com/ HTTP/1.1" 301 - "-" "curl/7.29.0"
192.168.204.128 - - [02/Mar/2018:19:20:54 +0800] "GET HTTP://linuxtest.com/ HTTP/1.1" 200 28 "-" "curl/7.29.0"
192.168.204.128 - - [02/Mar/2018:19:20:57 +0800] "GET HTTP://linuxtest.com/ HTTP/1.1" 200 28 "-" "curl/7.29.0"
192.168.204.128 - - [02/Mar/2018:19:20:58 +0800] "GET HTTP://linuxtest.com/ HTTP/1.1" 200 28 "-" "curl/7.29.0"

转载于:https://blog.51cto.com/sdwaqw/2082716

84.LAMP的apache用户认证,域名跳转,日志文件相关推荐

  1. Linux CentOS7 VMware LAMP架构Apache用户认证、域名跳转、Apache访问日志

    一.Apache用户认证 vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //把111.com那个虚拟主机编辑成如下内容 <Virtu ...

  2. 4.13 apache用户认证,跳转和访问日志

    Apache用户认证 有的网站在访问的时候需要我们输入账户名和密码,这样做的好处是增加了安全性,但是用户体验会很差.但是在我们在工作中还需要在一些重要的地方做一些安全认证. 首先我们编辑虚拟主机的配置 ...

  3. LAMP 之 Apache 用户认证

    第一步登陆上Discuz 之后,我们用做一个Apache 的用户认证 此网站有一个目录,上面有一些重要的文件,不需要其他人看见,只有管理员可以看,但是还要方便在网站上展示. 示例: [root@OBi ...

  4. Apache用户认证,域名跳转

    2019独角兽企业重金招聘Python工程师标准>>> 11月15日任务 11.18 Apache用户认证 11.19/11.20 域名跳转 11.21 Apache访问日志 11. ...

  5. 11.18 Apache用户认证 11.19/11.20 域名跳转 11.21 Apache访问日志

    2019独角兽企业重金招聘Python工程师标准>>> 11.18 Apache用户认证 htpasswd命令 >htpasswd命令是Apache的Web服务器内置工具,用于 ...

  6. 41.Apache用户认证及访问日志 域名跳转

    2019独角兽企业重金招聘Python工程师标准>>> 11.18 Apache用户认证 11.19/11.20 域名跳转 11.21 Apache访问日志 扩展 apache虚拟主 ...

  7. Apache用户认证、域名跳转、Apache访问日志

    httpd的用户认证 注意: 本章使用浏览器进行检测的前提是在物理机hosts文件添加虚拟机IP和虚拟主机域名. 配置用户认证 编辑httpd配置文件/usr/local/apache2.4/conf ...

  8. Apache用户认证、默认虚拟主机、域名301跳转

    apache hosts配置文件: vim /usr/local/apache/conf/extra/httpd-vhosts.conf apache 主配置文件: vim /usr/local/ap ...

  9. 4.36域名重定向4.37用户认证4.38Nginx访问日志4.39日志不记录静态文件4.40日志切割...

    2019独角兽企业重金招聘Python工程师标准>>> 域名重定向 用户认证 Nginx访问日志 日志不记录静态文件 日志切割 域名重定向 配置第二个域名: vi /etc/ngin ...

最新文章

  1. python代码翻译-Python编程学习 -- 用十几行代码实现一个翻译器
  2. 运用多种知识点实现一个综合小游戏
  3. php foreach ,PHP学习之foreach循环时加符号的说明
  4. 深挖android low memory killer
  5. Recoil 是 React 的状态管理库
  6. 服务器维护 文档,ERP系统维护服务器维护管理文档.docx
  7. DWR整合Spring
  8. Linux下安装python及MySQLdb
  9. request库的基本使用
  10. ps mysql进程_ps(Process Status)进程状态:列出当前正在运行的进程
  11. sp_executesq用法
  12. 《Java 8 实战》 学习笔记一(行为参数化)
  13. PDMS二次开发应用案例——Code Interface
  14. ios 录音生成.aac录音文件
  15. Windows目录下SysWow64文件夹与System32文件夹
  16. 教你实现一个 iOS 重签名工具
  17. (数据结构)二叉树中序遍历
  18. Oracle生成data patching脚本
  19. 字体图标的引入方式(阿里巴巴字体库的使用)
  20. 软件测试|缺陷的生命周期是怎么样的

热门文章

  1. 自主访问控制 强制访问控制_快速访问控制
  2. 二叉树 平衡二叉树 红黑树_迅捷树,二叉树
  3. Akka向设备组添加Actor注册《thirteen》译
  4. Java面试锦囊送给你!大厂门槛随便跨!
  5. C++实用编程——随机生成迷宫算法
  6. 开发环境运行正常,发布服务器后提示HTTP 错误 403.14 - Forbidden
  7. P2296 寻找道路
  8. 开源大数据周刊-第50期
  9. 《IP多播网络的设计与部署(第1卷)》——2.1 多播地址
  10. (vc)分享一个读写ini文件的类,支持多种数据类型的读写,二进制数据都能保存和读取...