Lamp

htaccess 文件未在我的 React 應用程序上重定向路由

  • August 14, 2019

我目前在 Amazon Lightsail LAMP 實例上託管我的 React 應用程序。我有兩個版本的 htaccess 文件。當我在 GoDaddy cPanel webhosting 上託管我的 React 應用程序時,一個對我有用。我在嘗試使路由正常工作時在網上找到了另一個。

這是適用於 Godaddy 的:

RewriteEngine On 
RewriteBase /
 RewriteRule ^index\.html$ - [L]
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]

這是我在網上找到的:

Options +FollowSymLinks -MultiViews
 RewriteEngine On
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^ index.html [QSA,L]

我開始認為這與 Lightsail 上的 LAMP 配置有關。對此的任何幫助將不勝感激。

編輯1:

根據艾登的要求:

我目前正在嘗試從 GoDaddy cPanel Web Hosting 遷移到執行 LAMP 的 Amazon Lightsail 實例。我的網路應用程序是使用React. 該.htaccess文件應該將客戶端重定向到index.htmlJS 將載入新內容的位置。我的.htaccess文件適用於 GoDaddy,但不適用於 Lightsail 實例。我假設這是 LAMP 中的配置問題。我嘗試設置艾登的建議無濟於事。我.htaccess的文件在htdocs文件夾中。

為了更好地理解,我們可以了解您在哪里以及您想去哪裡(重定向)不存在的頁面到 index.php 或任何其他頁面。

在 .htaccess 中嘗試相同的操作

重寫引擎開啟

RewriteBase /

重寫規則 ^index.php$ -

$$ L $$ RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

重寫規則。/index.php

$$ L $$

與創建不同的處理程序文件並讓 apache 擷取數據並將其提供給適當的處理程序或變數 ID 相比,您可以更好地控制處理

並檢查 apache 配置 -> /etc/httpd/conf/httpd.conf

Options Indexes FollowSymLinks

AllowOverride all

Order allow,deny

Allow from all

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