Я бы хотел, чтобы 410 весь каталог - я удалил свой блог
У меня была папка с именем blog на моем сайте.
Я удалил все это навсегда.
Я хотел бы это сделать.
Как сделать 410 всей папкой?
например. мой сайт выглядел так:
example.com/blog/mycoolpost1/
example.com/blog/mycoolpost2/
example.com/blog/mycoolpost3/
example.com/blog/mycoolpost4/
теперь сообщения 1,2,3,4, мертвы.
так как я могу указать, что все после блога постоянно удаляется. (а также сам блог "blog" )
Мне нужна строка htaccess что-то вроде этого...?
redirect 410/blog/?(.*)
Ответы
Ответ 1
Директива Redirect
- это правильный способ сделать это. Вы должны поместить следующее в конфигурацию вашего виртуального хоста:
Redirect 410 /blog
Если у вас нет доступа к конфигурации виртуального хоста, вы можете поместить его в файл .htaccess
в свой корень документа, или я полагаю, что вы можете поместить в файл .htaccess
следующее в blog
подкаталог:
Redirect 410 /
(я мог бы отключиться от этого, я не уверен, как именно Redirect
взаимодействует с разрешением пути в файлах .htaccess
)
Ответ 2
Я не думаю, что Redirect
- правильный инструмент для этого, так как он соответствует только указанному пути. Просто используйте:
RewriteEngine On
RewriteBase /
RewriteRule ^blog/ - [G]
Ответ 3
Следующий .htaccess был бы полезен, когда, например, вы переходите от хостинга к другому, и вы переупорядочиваете или удаляете части своей сети.
Поскольку Apache допускает синтаксические коды человека, я использовал постоянный вместо 301 кода и ушел вместо 410. Здесь вы можете проверить коды http-протоколов Определения кода состояния
Я поместил файл в мою папку mynewblogaddress.com root:
.htaccess
Redirect permanent /wordpress http://www.mynewblogaddress.com/blog/
Redirect gone /gallery2
Redirect permanent /directory2 http://directory2.mynewblogaddress.com
Ответ 4
Вы можете установить правило перезаписи в .htaccess, чтобы перенаправить все URL-адреса, содержащие "блог" мертвой папки, на пользовательскую страницу "Не существует" или что-то еще. Если вам нужен фактический код, я бы рекомендовал прочитать guide-url-rewriting, чтобы помочь вам понять это.
Ответ 5
Для тех, кто использует IIS (7 или выше) и наткнулся на эту запись, как я это сделал, вот как я это сделал, используя global.asax:
void Application_BeginRequest(object sender, EventArgs e)
{
HttpApplication app = sender as HttpApplication;
if (app.Request.Url.PathAndQuery.IndexOf("/mydirectory") > -1)
{
Response.StatusCode = 410; Response.End();
}
}
Мне приходилось искать все страницы в каталоге, но я мог бы сделать что-то подобное, например, таргетинг на все html-страницы (предполагая, что все html-страницы должны быть "ушли" )