2013-10-11 59 views
30

我想更改當我瀏覽我的網站時顯示的默認網頁。我目前正在運行一個報告程序,並輸出一個名爲index.html的文件。我無法改變它所稱的文件。因此,我的着陸頁必須被稱爲別的東西。現在,當我瀏覽我的網站時,我會進入報告頁面。如何更改Apache中的默認索引頁?

從我所看到的,無論你叫做index.html,它都會將其作爲默認值。我想將其更改爲landing.html。我該怎麼做呢?

我是一個文件夾(Folding @ Home)。報告程序是HFM.net。 HFM可以用我當前的摺疊統計信息輸出一個html文件。它命名html文件索引。我不希望這是我的默認主頁。我想要一個類似菜單的登陸,如果我想查看我的統計信息或其他內容,我可以選擇。該網站在/ home/tyler/Documents/hfm/website(landing.html和hfm的index.html在這裏)。 Apache2位於其默認目錄中。

我還使用的Ubuntu 13.04。

回答

54

我推薦使用.htaccess。您只需要添加:

DirectoryIndex home.php 

或您希望擁有的任何頁面名稱。

編輯:基本的htaccess教程。

1)在要更改索引文件的目錄中創建.htaccess文件。

  • 沒有擴展
  • 在前面.,以確保它是一個 「隱藏」 的文件

在那裏輸入上面的線。您可能會添加許多其他許多內容(用於網絡字體/媒體文件的AddTypes,用於標頭的緩存,用於壓縮的gzip聲明等),但是該行會聲明您的新「主頁」頁面。

2)設置服務器,以允許可能只需要在你的本地主機讀的.htaccess文件(如果你的主機servce默認爲允許它作爲最做)

假設你有機會,去你的服務器上啓用了網站位置。我運行Debian服務器進行開發,Debian/Ubuntu的默認站點設置爲/etc/apache2/sites-available/default。不知道你運行的服務器,只是搜索「網站可用」並進入「默認」文檔。在那裏你會看到一個目錄的條目。修改它看起來像這樣:

<Directory /var/www/> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride None 
    Order allow,deny 
    allow from all 
</Directory> 

然後重新啓動您的apache服務器。同樣,不知道你的服務器,但在Debian/Ubuntu的命令是:

sudo service apache2 restart 

技術上只需要重裝,但我重啓只是因爲我覺得一個完整的刷新這樣更安全。

一旦完成,您的網站應該從您的.htaccess文件中讀取,並且您應該有一個新的默認主頁!一個側面說明,如果你有一個運行一個站點的子目錄(比如管理部分或者其他東西),並且你想爲該目錄有一個不同的「主頁」,你可以在該子站點的另一個.htaccess文件根,它會覆蓋父項中的聲明。

+0

如何使用htaccess? 我的landing.html文件不在同一個目錄中。 –

+0

用一個簡單的.htaccess教程編輯我的答案。 – PlantTheIdea

+0

嗯......所以我應該做的是在我的根目錄下創建一個名爲「.htaccess」的文件?我的根目錄是另外一個,因爲我在httpd.conf中改變了它(並且我在apache2.conf中添加了一個「Include httpd.conf」。這是否是您所指的根目錄? 檢查我的編輯 –

-4

將它保存在Web根文件夾index.html

<html><head> 
<meta http-equiv="refresh" content="0; url=landing.html" /> 
</head> 
</html> 
+0

這是一個重定向到另一個頁面,而不是答案如何改變apache中的默認索引頁面 – SeriousM

2

您還可以在Apache的httpd.conf文件中設置的DirectoryIndex。

的CentOS保持在/etc/httpd/conf/httpd.conf Debian的這個文件:/etc/apache2/apache2.conf

打開文件在文本編輯器,並找到符合的DirectoryIndex

開始

要加載landing.html上的默認(但如果index.html的沒有找到)將此行更改爲:

DirectoryIndex landing.html index.html