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

1,Apache用户认证。

    (1)编辑配置文件。vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf。添加以下内容:

<VirtualHost *:80>
    DocumentRoot "/data/wwwroot/www.123.com"
    ServerName www.123.com
    ServerAlias www.example.com
        <Directory /data/wwwroot/www.123.com>
        AllowOverride AuthConfig
        AuthName "123.com user auth" 
        AuthType Basic
        AuthUserFile /data/.htpasswd
        require valid-user
        </Directory>
        ErrorLog "logs/www.123.com-error_log"
        CustomLog "logs/www.123.com-access_log" common
</VirtualHost>

    创建用户和密码文件。

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

    重新加载配置。

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

   访问www.123.com出现401错误。意味着需要认证权限。

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

    在本机电脑上修改hosts文件,使www.123.com指向这台linux服务器。

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

    这样就可以用windows的浏览器去访问www.123.com了。

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

   输入用户名和密码就可以登陆。

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

    在curl中输入用户名和密码。

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

    针对单个文件认证。

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

    编辑123.php,访问www.123.com发现不需要认证。  

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

    而访问123.php则需要认证。

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

2,域名跳转。

    一个网站可以有多个域名,例如A,B域名都可以访问某个网站,但是在浏览器输入A网址时候浏览器里面的网址会直接变成B网址,这就是域名的跳转。

    域名跳转的作用:

    一,对SEO有影响,就是对百度搜索关键词的排名有影响。

    二,之前某个老域名不再使用,但是搜索引擎还保留着老域名的连接,搜索网址点击老域名时就会跳到新域名。

    编辑配置文件。    

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

    RewriteRule里面有三部分。第一部分为当前的的URL,不包含域名。第二部分为要跳转的目标地址,可以包含域名也可以不加。第三部分为一些选项,需要用方括号括起来,301为状态码(永久定向),还有一种302(临时重定向)。L表示last,跳转一次的就结束。要实现域名跳转,还需要rewrite模板的支持,先查看是否已经加载,如果没有则需要配置。

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

  找到rewrite去掉#号。

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

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

    状态码301。

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

   3,Apache访问日志。

    在/usr/local/apache2.4/logs下可以看到日志文件。

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

    查看access_log文件的内容。

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

    定义log日志的格式。vim /usr/local/apache2/conf/httpd.conf

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

    修改配置文件日志格式为combined。

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

 查看访问日志有很大不同。

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