.htaccess 文件來進行用戶組的目錄權限訪問控制

<IfModule rewrite_module>
RewriteEngine on
RewriteRule ^((?:bootstrap|css|img|js||MathJax|video)/.*)(-V\d+)(.*)$ $1$3 [QSA,PT,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>php

 

 

概述來講,htaccess文件是 Apache服務器中的一個配置文件,它負責相關目錄下的網頁配置。經過htaccess文件,能夠幫咱們實現:網頁 301重定向、自定義404錯誤頁面、改變文件擴展名、容許/阻止特定的用戶或者目錄的訪問、禁止目錄列表、配置默認文檔等功能。
Unix、Linux系統或者是任何版本的Apache Web服務器都是支持.htaccess的,可是有的 主機服務商可能不容許你自定義本身的.htaccess文件。
啓用.htaccess,須要修改httpd.conf,啓用AllowOverride,並能夠用AllowOverride限制特定命令的使用。若是須要使用.htaccess之外的其餘文件名,能夠用AccessFileName指令來改變。例如,須要使用.config ,則能夠在服務器配置文件中按如下方法配置:AccessFileName .config 。
籠統地說,.htaccess能夠幫咱們實現包括:文件夾密碼保護、用戶自動 重定向、自定義錯誤頁面、改變你的 文件擴展名、封禁特定IP地址的用戶、只容許特定IP地址的用戶、禁止目錄列表,以及使用其餘文件做爲index文件等一些功能。

工做

編輯
.htaccess文件(或者"分佈式配置文件")提供了針對每一個目錄改變配置的方法,即在一個特定的目錄中放置一個包含指令的文件,其中的指令做用於此目錄及其全部子目錄。

說明

若是須要使用.htaccess之外的其餘文件名,能夠用AccessFileName指令來改變。例如,須要使用.config ,則能夠在服務器配置文件中按如下方法配置:
AccessFileName .config
一般,.htaccess文件使用的配置語法和主配置文件同樣。AllowOverride指令按類別決定了.htaccess文件中哪些指令纔是有效的。若是一個指令容許在.htaccess中使用,那麼在本手冊的說明中,此指令會有一個覆蓋項段,其中說明了爲使此指令生效而必須在AllowOverride指令中設置的值。
例如,本手冊對AddDefaultCharset指令的闡述代表此指令能夠用於.htaccess文件中(見"做用域"項),而覆蓋項一行是FileInfo ,那麼爲了使.htaccess中的此指令有效,則至少要設置 AllowOverride FileInfo 。

優缺點

採用.htaccess文件的優缺點:
  
  一般網絡管理員採用.htaccess文件來進行用戶組的目錄權限訪問控制。沒有必要將全部的HTTPd服務器、配置文件以及目錄訪問權限所有受權給 管理員。利用當前目錄的.htaccess文件能夠容許管理員靈活的隨時按需改變目錄訪問 策略。      採用.htaccess的缺點在於:當系統有成百上千個目錄,每一個目錄下都有對應的.htaccess文件時,網絡管理員將會對如何配置全局訪問策略無從下手。同時,因爲.htaccess文件十分被容易覆蓋,很容易形成用戶上一時段能訪問目錄,而下一時段又訪問不了的狀況發生。最後,.htaccess文件也很容易被非受權用戶獲得,安全性不高。
相關文章
相關標籤/搜索