WordPress дружественные URL на хостинге Concentric / XO? - PullRequest
0 голосов
/ 23 июля 2010

Я недавно установил Wordpress и не могу заставить веб-сайт отображать дружественные URL-адреса, независимо от того, какие настройки я использую внутри Dashboard или в файле .htaccess.Я пробовал многочисленные версии Wordpress и до сих пор не могу достичь того, что мне нужно, несмотря на успех на хостах, отличных от Concentric / XO, есть идеи почему?

Ответы [ 2 ]

1 голос
/ 23 июля 2010

Обновление: я выпустил плагин, который делает все это для вас.Однако вам все равно нужно выполнить шаги для файла .htaccess.Посмотрите здесь: http://wordpress.org/extend/plugins/permalink-fix-disable-canonical-redirects-pack/

Выполните следующие действия, прежде чем пытаться установить WordPress в первый раз.Если вы уже установили его, начните заново.

Чтобы заставить работать постоянные ссылки, вам нужно создать файл .htaccess, WordPress не может сделать это автоматически на этом хосте.Вот как должен выглядеть основной файл .htaccess:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

Убедитесь, что вы создали этот файл с помощью редактора, который позволяет форматировать Unix (например, PSPad или VIM, Textmate и т. Д.), Используя блокнотвыдаст ошибку синтаксического анализа - это как-то связано с невидимым символом конца файла (CLRF).Убедитесь, что последнее правило имеет жесткий возврат после него, это необходимо.Файлы .htaccess хранятся в кэше до 15 минут, поэтому вам, возможно, придется подождать, пока он не заработает.

Затем вам нужно отредактировать файл wp-settings.php, чтобы открыть его в редакторе.Добавьте следующий код прямо над закрывающим тегом?> Php:

if(isset($_REQUEST['q'])) {
$_SERVER['REQUEST_URI'] = "/" . $_REQUEST["q"];
}else{
if (empty($_SERVER['QUERY_STRING'])) {
$_SERVER['REQUEST_URI'] = $_SERVER['SCRIPT_NAME'];
       } else {
$_SERVER['REQUEST_URI'] = $_SERVER['SCRIPT_NAME'] . "?" .
$_SERVER['QUERY_STRING'];
       }
}

Если кто-то может написать этот блок кода более свободно, я не являюсь опытным программистом PHP.

Как только этот блок кода будет установлен, вы можете приступить к запуску установки.

Теперь, когда WordPress установлен, вам нужно будет сделать еще одну вещь, прежде чем вы сможете начать вести блог:

Создатьновый файл с именем: disable-canonical-redirects.php и загрузите его в каталог wp-content / plugins.

Перетащите этот блок кода в этот файл:

<?php
    /*
    Plugin Name: Disable Canonical URL Redirection
    Description: Disables the "Canonical URL Redirect" features of WordPress 2.3 and above.
    Version: 1.0
    Author: Mark Jaquith
    Author URI: http://markjaquith.com/
    */

    remove_filter('template_redirect', 'redirect_canonical');

?>

Теперь вам нужночтобы включить этот плагин, перейдите на страницу входа администратора: example.com/wp-login

Включите созданный плагин.Вот и все, вы на лошади.

0 голосов
/ 23 июля 2010

Спросите их, включены ли у них mod_rewrite.

Чтобы узнать сами, попробуйте сначала добавить файл .htaccess, содержащий тарабарщину:

sadölkasdfksdakföasldfg

, если поместить его в веб-пространство,и затем попытка доступа к любой странице на нем приводит к ошибке 500, файлы htaccess анализируются.Затем попробуйте добавить «настоящий» файл .htaccess:

RewriteEngine On

, если это работает без 500, тогда перезапись URL должна быть включена.

...