Exchangeなしで自動検出機能を使用する方法はありますか?


12

Exchangeで使用される自動検出方法は素晴らしいです。ただし、Exchangeはありません。

メールアカウントを設定するとき、デバイス/メールクライアントはautodiscover.xmlファイルを探します。

自分でそのようなファイルを作成し、通常のメールLinuxサーバーを指定して、通常のLinuxサーバーで提供する方法はありますか?

回答:


17

まず、Outlookの場所を指定する必要があります。Autodiscover.xmlファイルを含むサーバーを指すDNSのSRVレコードを使用します。

_autodiscover._tcp.mydomain.com. 3600 IN SRV  10 10 443 my-web-server.mydomain.com.

http://virer.net/info/ol-autodiscover/index.htmlの PHPスクリプトを使用して、Autodiscover.xmlファイルをクライアントに返します。いくつかのPHPが埋め込まれているため、Outlookに入力された電子メールアドレスに応じて異なる値を返すことができます。(1つの自動検出ファイルを使用して、1つの構成スクリプトを使用して複数のドメイン/クライアントの結果を返す場合に役立ちます)。

そのスクリプトがWebサーバー上にあり、機能するようになったら、有効な証明書でHTTPSを有効にして、ダウンロード時にOutlookがエラーをスローしないようにしてください。


ドキュメントregへのリンクはありますか。SRVレコード?
フレデリックノール

ここでまともなリファレンスです:markgossa.blogspot.com/2015/11/...
アーロンC.デBruyn

9

Linuxサーバーで自動検出の構成を完了しました。現在、ほとんどすべてのクライアントでメールが自動的にセットアップされます。

以下は、POP3 / IMAP設定で自動検出をセットアップする簡単なソリューションです。

DNS:

_autodiscover._tcp.yourdomain.com. 3600 IN SRV  10 10 443 mail.yourmx.com.

PHP(autodiscover.php):

<?php
preg_match("/\<EMailAddress\>(.*?)\<\/EMailAddress\>/", $data, $matches);

//set Content-Type
header("Content-Type: application/xml");
?>
<?php echo '<?xml version="1.0" encoding="utf-8" ?>'; ?>
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
<Response xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a">
<Account>
<AccountType>email</AccountType>
<Action>settings</Action>
<Protocol>
<Type>POP3</Type>
<Server>mail.yourmx.com</Server>
<Port>995</Port>
<LoginName><?php echo $matches[1]; ?></LoginName>
<DomainRequired>off</DomainRequired>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
<DomainRequired>off</DomainRequired>
</Protocol>
<Protocol>
<Type>IMAP</Type>
<Server>mail.yourmx.com</Server>
<Port>993</Port>
<DomainRequired>off</DomainRequired>
<LoginName><?php echo $matches[1]; ?></LoginName>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
</Protocol>
<Protocol>
<Type>SMTP</Type>
<Server>mail.yourmx.com</Server>
<Port>465</Port>
<DomainRequired>off</DomainRequired>
<LoginName><?php echo $matches[1]; ?></LoginName>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
<UsePOPAuth>on</UsePOPAuth>
<SMTPLast>off</SMTPLast>
</Protocol>
</Account>
</Response>
</Autodiscover>

.htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ autodiscover.php [NC,L]

NB!署名済みSSL証明書を忘れずに取得してください。


アンドロイドとサンダーバードもこのセットアップで動作しますか?
ニュートリヌス


1

実際、クライアントがOutlookの場合(autodiscover.xmlを検索していると言ったため)、POP / IMAPとSMTPを使用している場合は、Guessmartを自動構成に使用する必要があります。Guessmartは基本的に、電子メールアドレスとパスワードを使用してOutlookであり、一般的なPOP / IMAP / SMTPポートを使用してさまざまなホスト名を試して、正常にログインできるホストを見つけます。Outlookの自動検出と同じユーザーエクスペリエンスですが、Exchange以外のサーバーを対象としています。

Outlookで通知トレイのOutlookアイコンをCtrlキーを押しながら右クリックし、[電子メールの自動構成のテスト]を選択すると、Outlookでこれらすべてをテストできます。自動検出のチェックを外し、Guessmartをテストして、Outlookの動作を確認します。


autodiscover.xmlに一度気づきました。しかし、Thunderbirdはpop / imapにも使用されているサーバーを「推測」しようとしています。時々それは間違っていると推測します。Apple製品もこのようにすると思います。市場のほとんどの電子メールクライアントに標準化されたものが存在するかどうかを知りたいと思います。原因の人々は、smtp、pop、またはimapが何を表しているのかわからず、気にしません。それが役に立てば幸い。
-SamK

-6

いいえ、自動検出はExchangeに固有のものであり、その環境以外では機能しません。

そうではありません だけで、.xmlのファイルには自動検出に来るとき遊んでいるものがたくさんあります。

簡単な背景を説明するために、この記事を読んでください。それをよく理解できます。

http://www.msexchange.org/articles_tutorials/exchange-server-2010/management-administration/exchange-autodiscover.html

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.