php - name - get all tags wordpress
Wordpress ignora caracteres Unicode en URL (3)
Estoy usando WordPress con este tipo de enlace permanente:
/% año% /% mesnum% /% nombre de correo% /
si uso este tipo de url: example.com/2010/03/ तकनीक
trata esta url como este ejemplo.com/2010/03/ (ignorando los caracteres Unicode) y muestra la lista de archivos de marzo de 2010.
si uso english url: example.com/2010/03/technology, entonces funciona perfectamente.
Este problema ocurre incluso en la página de etiquetas: por ejemplo example.com/tag/ इंटरनेट se trata como example.com/tag/ y muestra la página 404.
¿Por qué wordpress está ignorando los caracteres unicode?
Si uso la estructura de querystring predeterminada, entonces funciona perfectamente incluso con caracteres Unicode.
Información del servidor: servidor IIS7 Win2008 (reescritura de URL habilitada) Wordpress 2.9.2
El http://support.microsoft.com/kb/2277918 proporciona una revisión que no funcionaba para mi versión de Windows y / o código para usar usando Inicio> Ejecutar, que tampoco era efectivo y no agregaba la clave de registro por alguna razón en mi caso en Windows 7 Ultimate y IIS 7.5.7600
reg add HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/w3svc/Parameters /v FastCGIUtf8ServerVariables /t REG_MULTI_SZ /d REQUEST_URI/0PATH_INFO
Tenía que hacer una de las siguientes elecciones:
1) Agregue el Reg. Teclee manualmente en HKEY_LOCAL_MACHINE / System / CurrentControlSet / Services / w3svc / Parameters agregando nuevo valor Multi-string >> Nombre del valor: FastCGIUtf8ServerVariables Value Data (dos líneas): REQUEST_URI PATH_INFO
2) Ejecute el código usando cmd.exe como administrador, luego pegue el código y ejecute
En ambos sentidos, recuerde ejecutar el comando iisreset en cmd.exe como administrador después del paso anterior.
Estoy ejecutando el servidor WAMP en la máquina local. Probé $ _SERVER [''PATH_INFO''] en mi servidor web IIS7 y encontré que tiene algún problema de Unicode. Wordpress usa path_info para manejar urls. Creé un archivo test.php con el siguiente código:
Si solicito http://example.com/test.php/कुछशब्द/कुछऔरशब्द/english
entonces obtengo esta salida
---- **** ----
/ ??????? / ????????? / english ---- **** ---- path_info está convirtiendo caracteres hindi unicode en ?????. Eso significa que hay algún problema en la variable path_info en mi servidor. ¿Conoces alguna configuración de IIS7 que pueda causar ese tipo de problema?
El mismo código funciona perfectamente bien en mi servidor Apache Windows local.
Para obtener una descripción general del problema, revise:
http://ruslany.net/2010/03/important-update-for-iis-7-0-fastcgi-module/
esto te remite a los ahora desactualizados:
http://ruslany.net/2010/02/fastcgi-module-differences-across-iis-versions/
Mi propia situación se resolvió aplicando Win 7 SP1 pero, curiosamente, todavía me quedaba la aplicación del hack de registro que se describe en el Hotfix: