0

我有一个反应应用程序。我正在使用一些在 URL 中接收参数的路由(通过 GET),例如myapp.com/products/1在本地环境中工作得很好,但在我的 CentOS 服务器中没有。我不得不提到我正在使用它npm run build来生成静态文件。

另一方面,我在 CentOS 服务器中将 Caddy 作为 HTTP 服务器运行,我只有包含参数的路由有问题,所以现在想知道 caddy 是否与这个问题有关。

React 人在这里说:

如果您使用的是 Apache,则需要在 public 文件夹中创建一个 .htaccess 文件,如下所示:

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

那么,我怎样才能在 Caddy 中做到这一点。我目前有该网站的这些行:

mysite.com {
   root PathToProject/build/
   log logs/pagelog.log
}

为了可以在 URL 中使用参数,缺少什么?

4

1 回答 1

1

我的 Caddyfile 中有这个配置

rewrite {
  if    {path} not_match ^\/0.0.0.0
  to    {path} {path}/ /?_url={uri}
}

看看这是否有帮助,它为 React App 解决了我的路由问题(类似于你提到的)。

于 2018-01-10T06:39:15.820 回答