2022-02-02

【html】以 .htaccess 設定並隱藏個別目錄下的預設首頁

參考資料 ----

Apache HTTP Server Tutorial: .htaccess files

<Directory> Directive


本筆記適合 web hosting 的看倌,理由下述。


一般在預設情況下,我們網站的首頁為 index.htmindex.htmlindex.php、......等等,當訪客輸入網址時,Apache server 就會自動讀取 index 為名的網頁。

當網站有數個子目錄時,每個目錄下的預設首頁都會是 index,這樣可能會有一不小心,本來要更新 A 目錄下的 index.???,卻 FTP 上傳到 B 目錄,因而覆蓋 B 目錄的 index.??? 的窘狀。

老人家還蠻常幹這類蠢事,所以會把個別目錄的首頁命名不同的檔名,例如:index-a.php, index-b.php, ...

再搭配在個別目錄下放各自的 .htaccess,進行個別目錄的首頁設定。

 
DirectoryIndex  index-a.php
 


請注意:這種設定方式會拖慢 Apache server 的速度,如果您具有網管的權限,可以設定 Apache server 的設定檔,那您可以在設定檔的 <Directory> 區段,達到同樣的效果而不影響 Apache server 的執行效率。

因為我的網站是寄放在 web hosting 廠商那,所以採用 .htaccess 這種方式。

個別目錄指定不同的首頁檔名,還有一個的好處 -- 就是一般人無法知道執行的網頁的檔名,檔名某種程度被隱藏了。




上圖的網址列,沒看到檔名,把滑鼠移至 "安裝" 的連結,圖下方顯示的連結也沒有檔名。



== 2022.03.06 ==

.htaccess 的做法也適用於 NAS

老人家偶然處理朋友的 NAS,雖然 NAS 手冊說可以 SSH 連進 NAS,本想連進去找 NAS 的 Apachehttpd.conf 改設定,但我用 pietty 嘗試連線時,卻出現錯誤訊息(見下圖),也就懶得試了。


再去試 putty,果然可以連進 NAS,是 pietty 的版本太舊了...



沒有留言:

張貼留言