apache目錄訪問
Ⅰ 本地apache伺服器,瀏覽的是目錄,怎樣解決
默認情況下,Apache伺服器會列出網站目錄中的文件及子目錄,這對於用於發布站點的伺服器來說是很不安全的,所以需要禁用,修改httpd.conf配置文件中的對應設置即可。
問題的現象:
如果你的網站目錄下有一個xxx的文件夾,如果xxx文件夾下沒有默認頁面(index.*等),當用戶使用URL:http://你的網址/a/ 訪問你的網站的話,Apache會把xxx文件夾里的內容全列出來。
解決方法:
要禁止此功能,修改httpd.conf
找到下面這一句刪除掉Indexes即可。
Options Indexes FollowSymLinks
配置示例:
<Directory "E:/Program Files/Apache Software Foundation/Apache2.2/htdocs">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
# 就是這一行,只去掉indexes也可
#Options Indexes FollowSymLinks
Options FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride None
#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
</Directory>
建議默認情況下,設置APACHE禁止用戶瀏覽目錄內容。
Ⅱ apache目錄訪問控制的參數是哪些
1.根目錄的訪問控制
DocumentRoot "/var/www/html"
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
解釋一下:
<Directory/>表示要對文件系統的目錄進行限制
Options FollowSymLinks表示跟隨符號鏈接,關於Option的值參下表
AllowOverrideNone表示不允許覆蓋,AllowOverride的值參見下表,在此例中對根目錄做了非常嚴格的限制,即只允許跟隨符號鏈接,不允許其他文件覆蓋當前的設置。
2.文檔根目錄的訪問控制-----(針對文檔根目錄"/var/www/html"進行限制。)
<Directory "/var/www/html">
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</Directory>
解釋一下:
OptionsIndexs
FollowSymLinks:設置允許跟隨符號連接:Indexes的含義是如果要訪問的文檔不存在,則會顯示出該目錄下的文件目錄清單。
AllowOverride
None:不允許覆蓋當前設置,即不處理.htaccess文件。
Allow from all:允許從任何地點訪問該目錄
拓展一下(關於OrderAllow,Deny詳解):
Allow和Deny可以用於apache的conf文件或者.htaccess文件中(配合Directory,Location,
Files等),用來控制目錄和文件的訪問授權。
所以,最常用的是:
Order Deny,Allow
Allow from All
注
意「Deny,Allow」中間只有一個逗號,也只能有一個逗號,有空格都會出錯;單詞的大小寫不限。上面設定的含義是先設定「先檢查禁止設定,沒有禁止
的全部允許」,而第二句沒有Deny,也就是沒有禁止訪問的設定,直接就是允許所有訪問了。這個主要是用來確保或者覆蓋上級目錄的設置,開放所有內容的訪
問權。
按照上面的解釋,下面的設定是無條件禁止訪問:
Order Allow,Deny
Deny from All
如果要禁止部分內容的訪問,其他的全部開放:
Order Deny,Allow
Deny from ip1 ip2
或者
Order Allow,Deny
Allow from all
Deny from ip1 ip2
apache
會按照order決定最後使用哪一條規則,比如上面的第二種方式,雖然第二句allow允許了訪問,但由於在order中allow不是最後規則,因此還
需要看有沒有deny規則,於是到了第三句,符合ip1和ip2的訪問就被禁止了。注意,order決定的「最後」規則非常重要,下面是兩個錯誤的例子和
改正方式:
Order
Deny,Allow
Allow from all
Deny from domain.org
錯誤:想禁止來自domain.org的訪問,但是deny不是最後規則,apache在處理到第二句allow的時候就已經匹配成功,根本就不會去看第三句。
解決方法:Order Allow,Deny,後面兩句不動,即可。
Order
Allow,Deny
Allow from ip1
Deny from all
錯誤:想只允許來自ip1的訪問,但是,雖然第二句中設定了allow規則,由於order中deny在後,所以會以第三句deny為准,而第三句的范圍中又明顯包含了ip1(allinclude ip1),所以所有的訪問都被禁止了。
解決方法一:直接去掉第三句。
解決方法二:
Order Deny,Allow
Deny from all
Allow from ip1
Ⅲ 如何在apache中設置訪問目錄後進入的默認頁面
你好,
從理論上來說,是可以更改的,由於本人從未有過如此想法,當時就未作過多探索。剛才,在進入文件夾時突然記起這個問題來,就順便實現了一下,打開Apache的配置文件httpd.conf找到了 <Directory D:/Apache/htdocs 改為 <Directory E:/htdocs ,用phpinfo();測試了一下,發現是網站拒絕訪問,由於原來我用IIS的緣故,很自然想到了是文件目錄許可權不足的問題,可是更改了文件目錄許可權後,問題絲毫沒有得到解決。
一、修改Apache的默認站點目錄
Apache HTTP Server安裝好後,默認的站點目錄位於其安裝目錄下的htdocs文件夾內,默認首頁是該文件夾的index.html文件。比如,我的Apache是安裝在C:/wamp/bin/apache/Apache2.2.21內,那麼我的Apache的完整的默認站點目錄地址就是C:/wamp/bin/apache/Apache2.2.21/htdocs/,默認首頁就是C:/wamp/bin/apache/Apache2.2.21/htdocs/index.html。
很多時候,不管是學習、測試,還是想真正的搭建自己的站點,我們可能並不想把自己的網站放在Apache默認的站點目錄下,這時,本節的知識將會幫助你解決這個問題。
在httpd.conf找到 DocumentRoot D:/Apache/htdocs ,我把這行改為 DocumentRoot E:/htdocs 即可。
修改方法:1、到Apache的安裝目錄下找到conf文件夾,該文件夾內會httpd.conf這樣一個文本文檔,它是Apache的配置文件,負責指揮Apache的運行。
2、雙擊打開httpd.conf這個文本文檔,按下鍵盤上的Ctrl+F組合鍵查找DocumentRoot (帶英文雙引號,見圖),查找出來之後(僅有一處),將字元串DocumentRoot後面雙引號內的字元串修改為自己想要設定的網站目錄。
如:默認為DocumentRoot C:/wamp/bin/apache/Apache2.2.21/htdocs,現修改成DocumentRoot D:/Apache
3、完成上述第2步之後,暫不要關閉httpd.conf文件,繼續查找,查找<Directory (帶英文雙引號,見圖3),查找到<Directory 之後,將第一個Directory字元串後面雙引號內的字元串修改為自己想要設定的網站目錄。
如:默認為<Directory C:/wamp/bin/apache/Apache2.2.21/htdocs,現修改成<Directory D:/Apache
4、同時按下鍵盤上的Ctrl+S組合鍵保存上述修改,一定記得要停止(STOP)一次Apache服務然後再啟動(START),使剛剛的修改生效。
綜上所述,更改 Apache 默認網站根目錄只需更改以下兩個地方即可!
1.找到 DocumentRoot D:/Apache/htdocs 將D:/Apache/htdocs改為你自定義的網站目錄;
2.找到 <Directory D:/Apache/htdocs 將D:/Apache/htdocs改為你自定義的網站目錄。
Ⅳ 如何實現訪問apache時的目錄瀏覽功能
你好!
web頁面打開的網頁,asp開始的,所以直接更新資料庫的語句添加到頁面可以訪問,倒是需要注意的是您要更新信息,一般根據id之類的區分
如果對你有幫助,望採納。
Ⅳ liunx怎麼設置apache的目錄訪問
首先:Linux下默認安裝後的Apache根目錄在/var/www/html下,我們需要對目錄進行訪問
第一 :創建自己需要更改的新目錄,並更改宿主許可權為apache用戶 chown -R apache:apache /mnt/chaodiquan.com/www
第二:停止Apache服務 service httpd stop
第三:修改Apache的配置文件,默認在/etc/httpd/conf/httpd.conf,找到Document Root修改為你需要許可權
第四:保存配置文件後,重啟Apache服務,你的Apache目錄更改就會生效了。
Ⅵ 啟用apache目錄瀏覽功能
1.搜索下邊這段,將如果前面有#,就將其刪除。
LoadMole autoindex_mole moles/mod_autoindex.so
2.找到代碼如下
<Directory />
Options FollowSymLinks #允許索引
AllowOverride None
Order deny,allow
Deny from all
</Directory>
參考:PHP程序員,雷雪松的個人博客。
Ⅶ LINUX下apache成功啟動,主目錄文件都可以訪問,但是子目錄都無法訪問,如何解決
許可權 通過root用戶把目錄+子目錄的許可權付給Apache用戶及用戶組
默認用戶接用戶組是daemon
命令如專下 chown -R daemon.daemon +文件目錄屬 ,即將你的應用的所有者變成daemon
這樣就可以訪問你的應用了。
Ⅷ 如何修改apache的默認訪問路徑
操作步驟:
1、vi /etc/httpd/conf/httpd.conf
找到 DocumentRoot "/var/www/html" 這一段 #apache的根目錄
把/var/www/html 這個目錄改為版/home/wwwroot/web1/htdocs
再找到 <Directory "/var/www/html"> #定義權apache /var/www/html這個區域
把 /var/www/html改成/home/wwwroot/web1/htdocs
這樣我們就把apahce的默認路徑改掉了
service httpd restart #重啟Apache伺服器
2、訪問localhost的時候,會發現訪問拒絕,這是為什麼呢?
主要是因為你的/home/wwwroot/web1/htdocs的許可權是750,apache這個用戶沒有許可權訪問,你需要更改掉許可權,可以這樣改
chmod -R 755 /home/wwwroot/web1/htdocs
chown apache.apache /home/wwwroot/ -R
然後去訪問 發現正常運行了(apache的用戶:apache 運行apache的組:apache)
Ⅸ apache怎麼指定訪問後台目錄
一、修改Apache的默認站點目錄
Apache HTTP Server安裝好後,默認的站點目錄位於其安裝目錄下的htdocs文件夾內,默認首頁是該文件夾的index.html文件。比如,我的Apache是安裝在C:/wamp/bin/apache/Apache2.2.21內,那麼我的Apache的完整的默認站點目錄地址就是C:/wamp/bin/apache/Apache2.2.21/htdocs/,默認首頁就是C:/wamp/bin/apache/Apache2.2.21/htdocs/index.html。
很多時候,不管是學習、測試,還是想真正的搭建自己的站點,我們可能並不想把自己的網站放在Apache默認的站點目錄下,這時,本節的知識將會幫助你解決這個問題。
在httpd.conf找到 DocumentRoot D:/Apache/htdocs ,我把這行改為 DocumentRoot E:/htdocs 即可。
修改方法:1、到Apache的安裝目錄下找到conf文件夾,該文件夾內會httpd.conf這樣一個文本文檔,它是Apache的配置文件,負責指揮Apache的運行。
2、雙擊打開httpd.conf這個文本文檔,按下鍵盤上的Ctrl+F組合鍵查找DocumentRoot (帶英文雙引號,見圖),查找出來之後(僅有一處),將字元串DocumentRoot後面雙引號內的字元串修改為自己想要設定的網站目錄。
如:默認為DocumentRoot C:/wamp/bin/apache/Apache2.2.21/htdocs,現修改成DocumentRoot D:/Apache
3、完成上述第2步之後,暫不要關閉httpd.conf文件,繼續查找,查找<Directory (帶英文雙引號,見圖3),查找到<Directory 之後,將第一個Directory字元串後面雙引號內的字元串修改為自己想要設定的網站目錄。
如:默認為<Directory C:/wamp/bin/apache/Apache2.2.21/htdocs,現修改成<Directory D:/Apache
4、同時按下鍵盤上的Ctrl+S組合鍵保存上述修改,一定記得要停止(STOP)一次Apache服務然後再啟動(START),使剛剛的修改生效。
綜上所述,更改 Apache 默認網站根目錄只需更改以下兩個地方即可!
1.找到 DocumentRoot D:/Apache/htdocs 將D:/Apache/htdocs改為你自定義的網站目錄;
2.找到 <Directory D:/Apache/htdocs 將D:/Apache/htdocs改為你自定義的網站目錄。