Но доступ к
blockquote>http://example.com/main/id_id
просто перенаправляет наhttp://example.com/main/id/id
. Мне интересно, почему он перенаправляет, поскольку я не использовал флагR
.Если вы укажете абсолютный URL (т.е. схема + имя хоста) в подстановке
RewriteRule
, то Apache неявно вызовет внешнее (302) перенаправление независимо от того, явно включен флагR
или нет.RewriteRule ^main/id_id$ /main/id/id/ [L]
Должно работать, но это не так.
blockquote>WordPress направляет URL-адрес на основе исходного URL-адреса запроса (т. е. значения суперглобального PHP
), а не переписанного URL-адреса. Так что, да, это «вещь WordPress». Вам нужно создать дополнительный «маршрут» для этого URL (не переписывать его). Однако это потенциально создает проблемы с дублированным контентом и т. Д.
Но доступ к [113] просто перенаправляет на [114]. Мне интересно, почему он перенаправляет, поскольку я не использовал флаг [115].
blockquote>Если вы укажете абсолютный URL (т.е. схема + имя хоста) в подстановке [116] , то Apache неявно вызовет внешнее (302) перенаправление независимо от того, явно включен флаг [117] или нет.
[110]Должно работать, но это не так.
blockquote>WordPress направляет URL-адрес на основе исходного URL-адреса запроса (т. е. значения суперглобального PHP [118]), а не переписанного URL-адреса. Так что, да, это «вещь WordPress». Вам нужно создать дополнительный «маршрут» для этого URL (не переписывать его). Однако это потенциально создает проблемы с дублированным контентом и т. Д.
Однако, если вы изменяете существующий URL, который, возможно, был связан с поисковыми системами и проиндексирован, тогда это, вероятно, должно быть внешним перенаправлением 301, а не внутренним переписыванием.
blockquote>RewriteBase /main/ RewriteCond %{REQUEST_URI} ^/main/id_id(.*)$ RewriteRule .* http://example.com/main/id/id%1 [L]
Это можно упростить до одной директивы:
RewriteRule ^main/id_id(.*) /main/id/id$1 [R,L]
Директива
SERVER['REQUEST_URI']RewriteBase
здесь ничего не делает. ДирективаRewriteBase
просто указывает URL-путь, который следует использовать для относительных замен пути.Однако, если вы изменяете существующий URL, который, возможно, был связан с поисковыми системами и проиндексирован, тогда это, вероятно, должно быть внешним перенаправлением 301, а не внутренним переписыванием.
[111] blockquote>Это можно упростить до одной директивы:
[112]Директива
RewriteBase
здесь ничего не делает. ДирективаRewriteBase
просто указывает URL-путь, который следует использовать для относительных замен пути.
Если Вы - администратор набора сайта, можно также вызвать регистрацию другого человека, проверил файл. Прием - то, что необходимо знать, в какой библиотеке это находится. Если Вы знаете, что, можно перейти к той библиотеке, то сделайте следующие вещи:
Ответ брюшного пресса приводит нас, дал нам подсказку - эй, как страница ManageCheckedOutFiles видит файлы, в которых еще не зарегистрировались другие пользователи?
таким образом, назад в нашем коде
SPDocumentLibrary doclib = PublishingWeb.PagesList as SPDocumentLibrary;
foreach(var checkedoutfile in doclib.CheckedOutFiles)
{
checkedoutfile.TakeOverCheckOut();
var file = doclib.GetItemById(checkedoutfile.ListItemId);
file.CheckIn();
}
Спасибо все :-)
Сначала у Вас должны быть права администратора по набору сайта. Затем:
Это должно позволить Вам видеть каждую страницу, подключенную к тому макету страницы.
Быстрое и легкое решение не-SharePoint: Если это - экс-коллега, там возможность просьбы о временном использовании его учетной записи с новым паролем так, чтобы можно было войти в портал и перепроверить его в или отбросить регистрацию?