程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了将 React Router 与 Apache 一起使用时禁止出现错误 403大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决将 React Router 与 Apache 一起使用时禁止出现错误 403?

开发过程中遇到将 React Router 与 Apache 一起使用时禁止出现错误 403的问题如何解决?下面主要结合日常开发的经验,给出你关于将 React Router 与 Apache 一起使用时禁止出现错误 403的解决方法建议,希望对你解决将 React Router 与 Apache 一起使用时禁止出现错误 403有所启发或帮助;

当我部署使用 React 和 React-router 构建的网站时,我网站的登录页面工作正常,但是当我尝试导航到我的网站时,我遇到了 403 禁止响应。我使用 Apache 作为 http 服务器,我的服务器的一般配置如下:

  <IfModule mod_php.c>
    php_value date.timezone Europe/Brussels
  </IfModule>

  <IfModule mod_userdir.c>
    UserDir /var/www/users/staff/*
  </IfModule>

供您参,该网站位于 /var/www/projects

我将以下 .htaccess 添加到我的项目中

<IfModule mod_rewrite.c>

  RewriteENGIne On
  RewriteBase /
  RewriteRule ^index\.HTML$ - [L]
  RewriteCond %{requEST_filename} !-f
  RewriteCond %{requEST_filename} !-d
  RewriteCond %{requEST_filename} !-l
  RewriteRule . /index.HTML [L]

</IfModule>

尽管有这些配置,但在 react-router 管理的页面中导航时仍会出现 403 禁止错误。我错过了一些配置吗?

解决方法

看来你应用的设置还不够,你也应该更改apache.conf中的一些参数...

打开 apache 主配置文件,其路径因您的发行版而异,位于以下位置之一:

1- /etc/apache2/httpd.conf
2- /etc/apache2/apache2.conf
3- /etc/httpd/httpd.conf
4- /etc/httpd/conf/httpd.conf

查找 "AllowOverride" 参数,如下例所示:

<Directory "/var/www/blahblah">
    
    AllowOverride All
    
</Directory>

并为此赋予 "All" 值。

然后在网络服务器的根文件夹中创建一个 .htaccess 文件并设置以下配置:

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

注意:在执行这些操作之前,您必须启用重写模块,通过输入以下命令,您可以执行此操作:

debian 基础:sudo a2enmod 重写 centos:在 @H_235_5@mod_rewrite.so

中取消注释 /etc/httpd/conf/httpd.conf

最后,重新启动您的网络服务器......现在预计不会再有问题了。

如果您遇到任何权限/服务器错误,请查看位于以下位置之一的网络服务器日志:

1- /var/log/httpd/
2- /var/log/apache2

大佬总结

以上是大佬教程为你收集整理的将 React Router 与 Apache 一起使用时禁止出现错误 403全部内容,希望文章能够帮你解决将 React Router 与 Apache 一起使用时禁止出现错误 403所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。