Назад | Перейти на главную страницу

Как перенаправить http-трафик в подкаталог, не нарушая работу приложения в подкаталоге?

У меня есть URL-адрес основного домена, сопоставленный с корнем моего сервера

У меня установлен WordPress в / blogs / techblog

Я хочу направлять любой трафик, входящий в jameselsey.co.uk к> jameselsey.co.uk/blogs/techblog

Если я укажу сам URL-адрес на подкаталог, моя установка не будет работать

Можно ли это сделать с помощью .htaccess файл в корне моего сервера?

Я пробовал следующее, но это создает "бесконечный цикл"

Redirect 301 / http://www.jameselsey.co.uk/blogs/techblog/

Я думаю, проблема в том, что Redirect также перенаправляет подпути, например /foo или в этом случае /blogs/techblog и добавляет его в новое место. Это может быть полезно, потому что если вы переместите весь веб-сайт в другое место (как уже сказано в статусе HTTP переехал навсегда) старые ссылки все еще работают.

В вашем случае такое поведение не очень помогает, но вы можете попробовать использовать mod_rewrite вместо:

RewriteEngine on
RewriteRule  ^/$    /blogs/techblog  [L]

Регулярное выражение ^/$ гарантирует, что только местоположения, которые точно / будет перенаправлен, и [L] сообщает apache, чтобы он прекратил перезапись после этих строк.

Вы изначально установили блог на jameselsey.co.uk? Я предполагаю, что вы это сделали, потому что Wordpress перенаправит на имя сервера, которое у него есть. Чтобы исправить это, переместите его обратно, войдите в свой wp-admin, измените имя сервера на http://www.jameselsey.co.uk/blogs/techblog/, и переместите его обратно. Вероятно, есть более чистый способ сделать это в файлах базы данных / конфигурации.