我需要在 cra web 应用程序的 .htaccess 文件中使用正则表达式重写 url

问题描述 投票:0回答:1

我正在使用 create-react-app 创建一个应用程序。使用react router dom v6设置所有路由。这些都是英文路径名,但我需要将它们转换为土耳其语。我像这样使用正则表达式重写

Options -MultiViews
RewriteEngine On
RewriteBase /b2b/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^product-list$ urun-listesi [R=301,L]
RewriteRule ^home$ anasayfa [R=301,L]
RewriteRule ^account-prop$ firma-bilgileri [R=301,L]
RewriteRule ^account-statement$ hesap-ekstresi [R=301,L]
RewriteRule ^basket$ sepet [R=301,L]
RewriteRule ^cargo-info$ kargo-bilgisi [R=301,L]
RewriteRule ^cargo-detail$ kargo-detayi [R=301,L]
RewriteRule ^claim-for-refund$ iade-basvurusu [R=301,L]
RewriteRule ^compare-prods$ urunleri-karsilastir [R=301,L]
RewriteRule ^credit-card-commisions$ kredi-karti-komisyonlari [R=301,L]
RewriteRule ^cas$ cari-hesap-ekstresi [R=301,L]
RewriteRule ^e-payment$ e-odeme [R=301,L]
RewriteRule ^index.html [QSA,L]

它可以工作并转换路径名,但随后我收到 404 错误并且页面未上传。如何解决这个问题?

我尝试获取静态路径,但我真的不知道正则表达式是如何工作的,所以我失败了。

regex .htaccess http-status-code-404
1个回答
0
投票

那么,土耳其资源存在吗?如果不是,您还需要注意通过内部重写规则再次处理传入的请求:

一个例子:

RewriteEngine On
RewriteBase /b2b/
RewriteRule ^product-list$ urun-listesi [R=301,L]
RewriteRule ^urun-listesi$ product-list [L]
© www.soinside.com 2019 - 2024. All rights reserved.