在 Apache 服务器上处理 React Router

Mee*_*eth 3 apache reactjs react-router

我在重定向 Apache 服务器上 React 生成的 URL 路径的 404 错误时遇到问题。

设想:

假设我有一些由 React Router 生成的 URL:www.somewebsite.com/apps

问题

如果最终用户单击刷新,如何重定向回 www.somewebsite.com/apps?

我尝试过的:

到目前为止,我可以将用户重定向到 www.somewebsite.com。我只需要获取重定向之前的路径。

MrC*_*ode 5

设置 Apache 重写规则以重写对 React 应用程序 (index.html) 的所有请求。

将其放入您的虚拟主机配置或 .htaccess 文件中。

<IfModule mod_rewrite.c>
    Options -MultiViews

    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.html [QSA,L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

现在,当用户在任何路线(如 )上按下刷新(或直接访问)时/apps,您的 React 应用程序将被加载,并且路由器将显示相关路线。

注意:RewriteCond排除静态文件被重写,这是必要的。

  • 您会将 .htaccess 文件放在哪里?在 /var/www/html/*subdirectory* 文件夹中? (2认同)