Apache-2.4

我想我有 .htaccess 問題

  • December 18, 2015

我執行 Ubuntu 14.04 和一個 LAMP 堆棧。我的 Joomla 網站出現了奇怪的問題,我懷疑這可能是因為我在執行 Web 伺服器時出錯。因為它不是 Joomla 論壇,所以我不會深入探討 Joomla 問題,但簡而言之——我在創建新菜單項時得到了錯誤的地址(出現一個奇怪的目錄“Feeds”,我只看到主Joomla 頁面)

如果我沒記錯的話,當我在 J 1.5 中創建我的原始 Joomla 站點時,我確實在我的 Joomla 根目錄中使用了 .htaccess,並且我在 Joomla 管理面板中選擇了一個適當的選項。另一個重要的一點是,我在託管環境中建構了一個原始站點(即,在遠端伺服器上,我假設可能執行 PHP 5.3)。我不是 Apache 的專家,但我認為我必須使用某個指令來啟用 .htaccess 的使用(我認為預設情況下它是禁用的)。我沒有啟用它。我什至決定將我的 Joomla 安裝從 J 1.5 升級到 2.5 的原因是因為當我嘗試在 Virtuemart 添加支付模組時遇到問題,我認為可能是因為 J 1.5 和 PHP 5.5 不兼容(這是Ubuntu 14.04 下的預設 PHP 版本)。雖然我確實成功地從 1 升級了 Joomla 版本。5 到 2.5,之後我無法打開任何菜單項(首頁除外)。我到處都是404錯誤!然後我關閉了“使用 URL 重寫”選項並將 .htaccess 重命名為 htaccess.txt 之後一切恢復正常(所有已經存在的,而不是新的菜單項——我根本沒有創建任何新的那個時間點的菜單項)。

我想在這裡問什麼……也許我應該在 Apache 中啟用 .htaccess 使用以避免這些問題?在 Ubuntu 14.04 和 LAMP 下實現這一目標的正確方法是什麼?

問題已經解決了。這是一個 Joomla/Virtuemart 問題,而不是真正的 Web 伺服器問題。必須去 Joomla 中的菜單管理器並在那裡按重建按鈕以按順序獲取菜單項。

我不知道 joomla,但大多數 CMS 都使用 .htaccess 進行 URL 重寫。

  • 所以第一步:

在您的 /etc/apache2/site-enabled/{yoursite}.conf 添加以下程式碼以嘗試啟用 .htaccess 以查看它是否可以解決您的問題

<Directory /path/to/joomla/www/root/>
AllowOverride All
</Directory>

不要忘記檢查 /path/to/joomla/www/root/.htaccess 是否存在

  • 第二步

如果它有效,您可以通過將 .htaccess 內容複製到您的 /etc/apache2/site-enabled/{yoursite}.conf 虛擬主機配置中來擺脫這種情況。然後您可以刪除第 1 步和 .htaccess 它現在應該可以在沒有 !

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