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

Для обнаружения больше о расположении сообщения попробуйте это:

mailq

Вы будете видеть много строк как это:

n812uLGQ001861 12089700 Mon Aug 31 19:56 <******@*****.org>
                 (Deferred: Connection timed out with c.mx.mail.yahoo.com.)
                                         <******@yahoo.com>
n82FR6a3019167 22388400 Wed Sep  2 08:27 <******@*****.net>
                 (reply: read error from g.mx.mail.yahoo.com.)
                                         <******@yahoo.com>

где n82FR6a3019167 является идентификатором сообщения

ls -al /var/spool/mqueue/*

Попытайтесь смотреть на те файлы (они - просто текстовые файлы), особенно тот, названный qn82FR6a3019167 (или независимо от того, что Ваше число идентификатора сообщения.Примечание: 'q' перед идентификатором сообщения. Необходимо смочь определить состояние сообщения, которое, надо надеяться, поможет определить то, что не работает правильно.

cat /var/spool/mqueue/qn82FR6a3019167

Если это не помогает, Вы, возможно, должны посмотреть на умную установку реле в sendmail.cf. Ваш сервер PHP, возможно, должен был бы передать почту через Умный Релейный хост.


Затем, я попробовал бы ручную сессию SMTP от Вашего сервера PHP до почтового сервера Google.

telnet alt4.gmail-smtp-in.l.google.com 25

Trying 209.85.129.114...
Connected to alt4.gmail-smtp-in.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP p9si790839fkb.7

helo 
250 mx.google.com at your service

mail from:
250 2.1.0 OK p9si740839fkb.7

rcpt to:
250 2.1.5 OK p9si740839fkb.7

data
354  Go ahead h2si759562fkh.29
Subject: This is a test

Testing!
.
250 2.0.0 OK 1251933071 h2si759562fkh.29
quit

221 2.0.0 closing connection h2si759562fkh.29

Connection closed by foreign host.

Это, надо надеяться, скажет Вам, если Ваш IP-адрес будет заблокирован, или если некоторый SPF (Платформа политики Отправителя) проблема существует, или если у Вас есть несоответствия имени DNS, которые могут заставлять Вашу электронную почту быть отклоненной или задержанной.

Я считаю Вас усеченными список деталей в Вашем ответе. Ваша система действительно должна иметь допустимое имя хоста с обратными записями DNS для того имени хоста.

Кроме того, проверьте свой/etc/hosts файл, чтобы гарантировать, что Ваш IP-адрес перечислен правильно там. Довольно распространено иметь несоответствия имени хоста быть проблемой при передаче электронной почты к Интернету (по крайней мере, по моему опыту).

Что-то как:

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1        localhost.localdomain localhost
xxx.xxx.xxx.xxx  yourhostname.yourdomain.com yourhostname

0
задан 23 September 2010 в 23:46
2 ответа

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

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

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

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

2
ответ дан 4 December 2019 в 15:08

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

0
ответ дан 4 December 2019 в 15:08

Теги

Похожие вопросы