Dot-Htaccess

將子域直接指向文件

  • December 3, 2018

我有一個 jar 文件,我想讓具有簡單子域的使用者輕鬆訪問它。目前,他們訪問https://subdomain.example.com/application.jar並直接啟動應用程序的下載。我更願意將其縮短為https://subdomain.example.com/當他們瀏覽到該連結時,該連結要麼被重定向(可能.htaccess)到application.jar資源,或者索引頁面上可能有一些程式碼可以啟動應用程序的下載。

此子域專門用於應用程序。本質上是https://application.example.com/application.jar. 沒有提供其他頁面或內容。只是一個直接下載資源的簡單連結。實現這一目標的最佳和最簡單的方法是什麼?

我嘗試將 DNS 記錄直接指向資源。那是不行的。我嘗試了 301 重定向,但我可能做錯了。我還沒有嘗試過使用一些 JavaScript 的索引頁面,因為這感覺像是一種過於復雜且容易失敗的方法。

你可以設置DirectoryIndex

DirectoryIndex application.jar

以下行需要mod_headers並且將為下載提供正確的文件名:

<Files application.jar>
   ForceType application/java-archive
   Header set Content-Disposition "attachment; filename=application.jar"
</Files>

但是,正如我已經懷疑的那樣,並非所有客戶都尊重這些標頭。使用 Chrome,我在我的睾丸中得到了正確的文件名,wget 忽略它並將文件儲存為index.html

總體而言,301 會更合適。一個有效的重定向將是:

RewriteEngine on
RewriteCond   %{REQUEST_FILENAME} -f
RewriteRule   ^ - [L]
RewriteRule   ^ "/application.jar"  [R]

這會將該子域上不作為文件存在的任何路徑重定向到/application.jar.

引用自:https://serverfault.com/questions/942607