iT邦幫忙

0

請問在php裡,如何設定網址只顯示網域,而不顯示後續的子目錄呢?

現在的網址是

但小弟基於安全考量希望在每個瀏覽頁面只出現

請問在php裡該如何做設定呢?
或是網管這裡有什麼方法可以設定呢?

0
wiseguy
iT邦超人 1 級 ‧ 2015-02-04 18:48:50
最佳解答

這跟 php 無關吧?
把你的 web daemon (比如 apache) 的 DocumentRoot 設定到 /home/pc 就好了啊!(改了 DocumentRoot 要 restart apache)

wwx iT邦研究生 1 級 ‧ 2015-02-05 10:15:57 檢舉

只果是每個網址都都只顯示domain
且只是網址列顯示的部分想要固定住
應該是用HTML來解決 與PHP無關
例如把目前的default page(例如: default.html) 改成 home.html
然後另寫一個簡單的 default.html 用 frame 把 home.html 帶入
這樣於home.html點的入的任何連結, 只要沒要求 _top 框架
就會一直顯示在相同的網址列進行了~
可以比較以下兩個網址 看到相同的頁面
http://sancom.wwx.tw/
http://web.sancom.wwx.tw/
但點入其他頁面後的網址列 前者網址不變
後者就是如發問者所描述的一般情形

wiseguy iT邦超人 1 級 ‧ 2015-02-05 12:36:10 檢舉

ghyzsing提到:
有想過設定DocumentRoot ,但因為有許多網站在在網域裡,無法只指定一個網站

既然有多站的需求,那就是仿照痞客邦的方式,也就是上面 wwx 邦友舉的網名例子,每個站設定一個 domane name,再配合 apache 的虛擬網站,每個不同網站設一個 <VirtualHost> 就可以有不同的 DocumentRoot 了。
雖然 wwx 提到用 frame 框住也可以達到只看到網名的效果,不過這只能騙到最最最無網頁概念的 end user,毫無安全性可言。

0
seconddim
iT邦新手 5 級 ‧ 2015-02-04 13:42:15

就我個人的經驗

如果要在程式中更改,需使用MVC架構來撰寫PHP,或是伺服器支援url rewrite,相關資訊google一下會更清楚。不過這個方法應該沒辦法只顯示乾淨的domain name

網管的做法有聽過使用proxy,曾經有個客戶的domain name因安全性設定導致網址後面的路徑與參數沒有顯示,相關細節我就不太清楚了。

以上經驗供參考

題外話:安全性考量隱藏網址路徑是不錯的想法,但是這樣做會影響SEO或一些使用著使用上的困擾(沒辦法對特定頁面紀錄網址)。

0
外獅佬
iT邦大師 1 級 ‧ 2015-02-05 11:09:59

用url rewrite就好了咩
Apache URL Rewrite
IIS7 URL Rewrite

我要發表回答

立即登入回答