htaccess設定

利用 apache 內建的功能,自動載入 .htaccess 的設定檔,

一般安裝 apache 的時候,預設是有AllowOverride None,這是指定 apache 自動載入 .htaccess 設定檔,若是 apache conf 中沒有這個值,就要手動加上去。

手動加入:

<Directory />
   AllowOverride None
</Directory>

IP偵測

使用allow from

order deny,allow
deny from all
allow from 127.0.0.1
## IO
allow from .domain.com.tw .domain2.com.tw 
allow from XXX.XX.XXX.0/24
allow from XXX.XXX.XX.XXX

Auth Basic

最常見的一種登入設定,首先使用 「htpasswd」的指令建立密碼檔,

「htpasswd」這個指令在安裝 apache 時候就有了,可以查看 apache 安裝目錄 「apache/bin/」。

  1. 建立.htpasswd檔案
  2. .htaccess設定

.htaccess:

AuthName XXX
AuthType Basic
AuthUserFile /set_your_root/.htpasswd
require valid-user

.htpasswd :

帳號:加密的密碼

[如何登出]

<a href="javascript:void;" onclick="admin_logout();"></>
<script type="text/javascript">
function admin_logout() {
    if(confirm("確定要登出嗎?")){
        var xmlhttp;
        if (window.XMLHttpRequest) {
              xmlhttp = new XMLHttpRequest();
        }
        // code for IE
        else if (window.ActiveXObject) {
          xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
        if (window.ActiveXObject) {
            // IE clear HTTP Authentication
            document.execCommand("ClearAuthenticationCache");
            window.location.href='/where_to_redirect';
        } else {
            xmlhttp.open("GET", '/path_that_will_return_200_OK', true, "logout", "logout");
            xmlhttp.send("");
            xmlhttp.onreadystatechange = function() {
                if (xmlhttp.readyState == 4) {window.location.href='/where_to_redirect';}
            }
        }
        return false;
    }
}
</script>

(參考: Stack Overflow)

參考

results matching ""

    No results matching ""