设为首页 收藏本站
查看: 1933|回复: 0

[经验分享] 84.LAMP的apache用户认证,域名跳转,日志文件

[复制链接]

尚未签到

发表于 2018-11-18 06:21:55 | 显示全部楼层 |阅读模式
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

DocumentRoot "/data/www/sdw.com"
ServerName sdw.com
ServerAlias www.example.com
   //指定认证的目录  
AllowOverride AuthConfig        //这个相当于打开认证的开关
AuthName "sdw.com user auth"    //自定义认证的名字,作用不大
AuthType Basic          //认证的类型,一般为Basic
AuthUserFile /data/.htpasswd  //指定密码文件所在位置
require valid-user      //指定需要认证的用户为全部可用用户

ErrorLog "logs/111.com-error_logo"
CustomLog "logs/111.com-access_log" common


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.修改配置文件
  
ServerAdmin 1239666161@qq.com
DocumentRoot "/data/www/sdw.com"
ServerName sdw.com
ServerAlias www.sdw.com

#//需要mod_rewrite模块支持
RewriteEngine on

//打开rewrite功能

    RewriteCond %{HTTP_HOST} !^sdw.com$
  #//定义rewrite的条件,主机名(域名)不是www.123.com满足条件
RewriteRule ^/(.*)$ http://sdw.com/$1 [R=301,L]
#//定义rewrite规则,当满足上面的条件时,这条规则才会执行


AllowOverride AuthConfig
AuthName "123.com user auth"
AuthType Basic
AuthUserFile /data/.htpasswd
require valid-user

ErrorLog "logs/sdw.com-error_log"
CustomLog "logs/sdw.com-access_log" common


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

#
# 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\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
说明:combined和common两种格式,默认使用common格式。
## 3、更改日志的格式为combined
[root@localhost ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
ErrorLog "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"



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-636315-1-1.html 上篇帖子: Centos 6.9 编译安装 apache 2.4+php7.2.3 + Fast 下篇帖子: mariadb和apache安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表