React 路由器 dom 部署后无法正常工作
React router dom not working after deployment
我正在使用反应路由器 dom 作为我的前端路由,但是每当我刷新页面或访问任何不是根或“/”的 URL 时,服务器都会响应一个 404,在我 运行 npm build 路由器之前工作得很好,即使我刷新了页面。
您应该使用以下代码(强制 https)将 .htaccess
(服务器配置)文件添加到远程 Apache 服务器的目录中:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) /index.html [NC,L]
</IfModule>
不强制 https:
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.html [QSA,L]
请检查
https://coderrocketfuel.com/article/fix-404-error-when-using-react-rouder-dom-and-nginx
我正在使用反应路由器 dom 作为我的前端路由,但是每当我刷新页面或访问任何不是根或“/”的 URL 时,服务器都会响应一个 404,在我 运行 npm build 路由器之前工作得很好,即使我刷新了页面。
您应该使用以下代码(强制 https)将 .htaccess
(服务器配置)文件添加到远程 Apache 服务器的目录中:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) /index.html [NC,L]
</IfModule>
不强制 https:
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.html [QSA,L]
请检查
https://coderrocketfuel.com/article/fix-404-error-when-using-react-rouder-dom-and-nginx