我目前在 Amazon Lightsail LAMP 实例上托管我的 React App。我有两个版本的 htaccess 文件。当我在 GoDaddy cPanel 网络托管上托管我的 React App 时,其中一个版本对我有用。我在尝试使路由正常工作时在网上找到了另一个版本。
这是在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 实例。我的 Web 应用程序是使用创建的React
。该.htaccess
文件应该将客户端重定向到index.html
JS 将加载新内容的位置。我的.htaccess
文件适用于 GoDaddy,但不适用于 Lightsail 实例。我认为这是 LAMP 中的配置问题。我尝试设置 Aiden 建议的内容,但无济于事。我的.htaccess
文件在htdocs
文件夹中。
答案1
为了更好地理解,我们可以了解您在哪里以及您想要去哪里(重定向)不存在的页面到index.php或任何其他页面。
在 .htaccess 中尝试相同操作
重写引擎开启
重写库 /
重写规则 ^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