Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php IIS 8.5上转换为拉丁字符集的URL中的转义百分比_Php_Wordpress_Iis_Joomla_Utf 8 - Fatal编程技术网

Php IIS 8.5上转换为拉丁字符集的URL中的转义百分比

Php IIS 8.5上转换为拉丁字符集的URL中的转义百分比,php,wordpress,iis,joomla,utf-8,Php,Wordpress,Iis,Joomla,Utf 8,迁移到新的Windows IIS 8.5服务器后,请求不会作为UTF-8字符传递,而是作为单字节拉丁字符传递 为了在WordPress和Joomla安装中使用美观或SEO友好的URL,需要UTF-8字符 从PHP中,$\u服务器['REQUEST\u URI']如下所示 / p r e s s e / p r ø v e s i d e 2f7072657373652f7072 f8 766573696465 在web服务器根目录中的web.config文件中 <?xml versi

迁移到新的Windows IIS 8.5服务器后,请求不会作为UTF-8字符传递,而是作为单字节拉丁字符传递

为了在WordPress和Joomla安装中使用美观或SEO友好的URL,需要UTF-8字符

从PHP中,
$\u服务器['REQUEST\u URI']
如下所示

/ p r e s s e / p r  ø  v e s i d e
2f7072657373652f7072 f8 766573696465
在web服务器根目录中的web.config文件中

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
   <appSettings>
      <add key="aspnet:UseLegacyRequestUrlGeneration" value="true" />
   </appSettings>
   <system.web>
      <globalization
         requestEncoding="utf-8"
         responseEncoding="utf-8"
         culture="da-DK"
         uiCulture="da-DK" />
   </system.web>
   <system.webServer>
   ...
   <system.webServer>
<configuration>

...

将以下更改应用于注册表修复了该问题

reg add HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\w3svc\Parameters /v FastCGIUtf8ServerVariables /t REG_MULTI_SZ /d REQUEST_URI\0PATH_INFO
似乎来自IIS 7.5的Microsoft热修复程序已应用到IIS 8.5中

在应用注册表更改之后,$\u服务器['REQUEST\u URI']在PHP中看起来像这样

/ p r e s s e / p r  Ã ¸  v e s i d e
2f7072657373652f7072 c3b8 766573696465
字节
C3
B8
是丹麦字母“ø”