使用 .htaccess 重定向到 Web 根目錄的符號連結子目錄?

使用 .htaccess 重定向到 Web 根目錄的符號連結子目錄?

我正在嘗試使用 Envoyer.io 部署我的程式碼,但遇到了一些問題。

該實用程式會建立兩個資料夾,current並且releases.資料夾current中最新版本的符號連結releases

所以我的目錄結構如下圖:

  • 公共_html
    • 目前 - 符號連結到releases/{release_id}
    • 發布
      • {發布_id}
        • 民眾
        • (其他內容)

我需要所有請求都轉到該current/public目錄,使其成為 webroot,而不是public_html.

我嘗試了將 webroot 設為 的明顯選項public_html/current/public,但隨後遇到了錯誤:Symbolic link not allowed or link target not accessible: /home/mysite/public_html/current

Options +FollowSymLinks我在我的文件中嘗試過各種變體.htaccess,但沒有成功。我相信我無法存取 Apache conf 文件,因為這是共享主機。

我將不勝感激有關此事的任何指導。

答案1

我忍不住重複一遍:

大多數在 ServerFault 上使用.htaccess和詢問它的人.htaccess一開始就不應該使用,因為這是最終用戶從未打算使用的解決方案對於管理員

你應該完全避免使用.htaccess文件如果您有權存取 httpd 主伺服器設定檔。使用.htaccess檔案會降低 Apache http 伺服器的速度。可以包含在文件中的任何指令.htaccess最好在目錄塊中設置,因為它將具有相同的效果和更好的性能。
更多內容在阿帕契手動的

為了能夠使用FollowSymlinks文件中的指令,.htaccess主伺服器配置需要允許透過設定AllowOverride All 或使用稍微不那麼慷慨的設定時,需要使用明確啟用該選項AllowOverride Option=FollowSymlinks指令,因為它不是AuthConfig、或 的FileInfo預設分組的一部分。IndexesLimit

相關內容