Intereting Posts
Pdf-визуализатор, встроенный в веб-сайт wordpress Любые известные ошибки, которые могут привести к исчезновению таблицы wp_users? Как я могу интегрировать yepnope.js с WordPress (и плагинами)? Запрос фильтра на основе даты в пользовательском поле MP4 видео на WordPress, работающих на рабочем столе, а не на мобильных устройствах Замена textarea на wp_editor Пользовательский тип сообщения: загрузка нескольких изображений Где находятся файлы, управляющие панелью управления с несколькими пользователями? Добавить текущий элемент меню CSS в специальный архив типа страницы в меню WordPress Проверьте, хорошо ли установлена ​​база данных Как использовать WP, встроенный в Thickbox для изображений? Массовый тег добавления (или любой ярлык) на сообщения, у которых есть пользовательский отрывок Номер комментария не увеличивается Разная компоновка на странице поиска в зависимости от должности категории Ошибка Timthumb 500 при нескольких запросах – не на одной нагрузке

WordPress Постоянная ссылка на знак вопроса (?) В URL-адресе

Мой постоянный URL-адрес: /% post_id% /% postname% /

и мой сайт находится на персидском языке, для некоторых сообщений Permalink – изменение URL-адреса от

http://www.ahangbaz.com/1300/%d8%a7%d8%a8%db%8c-%d8%b7%d9%be%d8%b4-%da%86%d8%b4%d9%85 % d9% 87 / в -> http://www.ahangbaz.com/1300/?-???-????/

но это не происходит для всех сообщений, например, например, следующие пост-работы прекрасно: ahangbaz.com/1106/%D9%82%DB%8C%D8%B5%D8%B1-%D8%A8%D8%B9%D8 %% AF-DA% 86% D9% 86% D8% D8% AF-% B3% D8% A7% D9% 84 /

Я проверил в таблице wp_posts wordpress, и Post_name похоже похоже на оба сообщения.

Если я изменю post_name на английский, он отлично работает, но когда post_name находится на персидском языке, возникает проблема. веб-сервер – это IIS 7.5 для Windows 2008 R2.


Дальнейшие испытания:

  • Я изменил тему и отключил все плагины, но это все равно. Я проверил коллицию DB и ее UTF8.

  • Чтобы воспроизвести проблему, используйте post_title = ابی – طپش – چشمه, а post_name будет% d8% a7% d8% a8% db% 8c-% d8% b7% d9% be% d8% b4-% da% 86% d8% b4% d9% 85% d9% 87

  • Такая же проблема возникает и в отношении категорий, когда слизень находится на персидском языке. Ahangbaz.com/category/%d8%a7%d8%a8%db%8c не работает, но когда его на английском или его номер работает ahangbaz.com/category/ 22.

Solutions Collecting From Web of "WordPress Постоянная ссылка на знак вопроса (?) В URL-адресе"

У меня нет возможностей комментариев, но проблема, скорее всего, будет на стороне сервера MS, особенно в модуле Rewrite URL. Это то, что обрабатывает постоянные ссылки на IIS. Существует исправление для этой проблемы, но вы, вероятно, должны применить все исправления, доступные для вашей системы.

Проблема, упомянутая в @Indolering, связана с модулем URL Rewrite, что URL-адреса, содержащие символы UTF-8, неправильно передаются при обработке модулем Rewrite URL.

Поскольку я не являюсь владельцем сервера, и я не могу установить указанное исправление (хотя я использую IIS8.5, проблема все еще существует) мне пришлось обойти это каким-то образом.

Решение, предложенное @ pouria-p для Joomla, также применимо к WordPress.

Шаг 1. Обновите правило перезаписи в файле web.config

 <configuration> <system.webServer> <rewrite> <rules> <rule name="WordPress" patternSyntax="Wildcard"> <match url="*"/> <conditions> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/> </conditions> <!-- The changes are applied to this line only --> <action type="Rewrite" url="index.php" /> </rule></rules> </rewrite> </system.webServer> </configuration> 

Правило будет следующим:

 <action type="Rewrite" url="index.php?requesturi={URL}" /> 

Шаг 2. Обновите $_SERVER['REQUEST_URI'] вручную, добавив следующую строку в начало файла index.php :

 if(isset($_GET['requesturi'])) $_SERVER['REQUEST_URI'] = $_GET['requesturi'];