0racleTink
V2EX  ›  问与答

请教一下,怎么样给一个网站加密,就是当你打开这个网站的时候,会弹出一个输入帐号和密码的对话框(类似于普通路由器管理页面登录时候那个提示窗口),登录成功之后才能正确显示网站内容?

  •  
  •   0racleTink · Dec 1, 2012 · 7026 views
    This topic created in 4980 days ago, the information mentioned may be changed or developed.
    我想实现的是,不需要用户名,只提示输入一个密码,如果正确就能访问网站,请教各位怎么实现?


    站点基于PHP
    Supplement 1  ·  Dec 2, 2012
    12 replies    1970-01-01 08:00:00 +08:00
    wogong
        1
    wogong  
       Dec 1, 2012
    tumblr的加密blog很符合这个要求。
    0racleTink
        2
    0racleTink  
    OP
       Dec 1, 2012   ❤️ 1
    @wogong 额,我是自己的站点
    binux
        3
    binux  
       Dec 1, 2012
    http basic authentication
    eric_q
        4
    eric_q  
       Dec 1, 2012
    这件事可以用 apache/nginx 来做,不需要在 php 层面上做更改
    skyleft
        5
    skyleft  
       Dec 1, 2012
    WEB服务软件,貌似都有这个功能。
    0racleTink
        6
    0racleTink  
    OP
       Dec 1, 2012
    @binux thx!
    0racleTink
        7
    0racleTink  
    OP
       Dec 1, 2012
    @eric_q 嗯,我知道是在nginx下做,具体实现不太懂
    liuhang0077
        9
    liuhang0077  
       Dec 1, 2012   ❤️ 1
    @sophy 那个太长了。。 用短网址好了 http://ytt.me/vHuDi3
    0racleTink
        10
    0racleTink  
    OP
       Dec 1, 2012
    @liuhang0077 3Q!!
    catfan
        11
    catfan  
    PRO
       Dec 1, 2012   ❤️ 2
    根本就不需要这么复杂,直接加个header就可以了。在弹出输入框里面提交的用户名和密码就是$_SERVER['PHP_AUTH_USER']和$_SERVER['PHP_AUTH_PW']

    <?php
    if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW']))
    {
    echo 'User: ' . $_SERVER['PHP_AUTH_USER'] . ' Password: ' . $_SERVER['PHP_AUTH_PW'];
    }
    else
    {
    header("WWW-Authenticate: Basic realm=\"Login\"");
    }
    ?>
    liuhang0077
        12
    liuhang0077  
       Dec 2, 2012
    @catfan =,= 其实地下的是原理解释而已了~

    https://gist.github.com/4183086
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   988 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 22:09 · PVG 06:09 · LAX 15:09 · JFK 18:09
    ♥ Do have faith in what you're doing.