Skip to content

配置了伪静态仍提示接口请求错误,请检查VIE_APP_BASE_URL参数配置或者伪静态配置

很多小伙伴环境为Apache配置了伪静态但是进入程序仍提示,接口请求错误,请检查VIE_APP_BASE_URL参数配置或者伪静态配置
这是因为Apache 在重写 URL 时保留原始的编码格式,而不是解码 %3f.使用 UnsafeAllow3F 指令
在 Apache 2.4.47 及更高版本中可以使用 UnsafeAllow3F 指令来允许 %3f 字符。
解决方法:只需要在apache伪静态处添加下图代码,或直接复制下边代码覆盖当前伪静态即可。

<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L,UnsafeAllow3F]
  RewriteEngine on RewriteCond % !^$
</IfModule>

基于 MIT 协议发布