lord-icon
Goto Top

Auto-Discovery für E-Mail einrichten

Hi,

ich versuche grad eine Auto-Discovery für E-Mail einzurichten.
Allerdings fällt es mir grad schwer das ganze entsprechend umzusetzen. Offensichtlich akzeptiert Outlook die autodiscovery-Seite nicht.

Ich gehe stark davon aus, dass mein Fehler in der PHP datei liegt.

Hier erstmal meine Vhost
 <VirtualHost 123.123.123.123:80>
  ServerName autodiscover.domain.de

    DocumentRoot "/var/www/htdocs/ks011/html/pages"
  php_admin_value open_basedir "/var/www/htdocs/ks011:/usr/share/php"
  php_admin_value session.save_path "/var/www/htdocs/ks011/temp"
  php_admin_value upload_tmp_dir "/var/www/htdocs/ks011/temp"
  php_admin_value safe_mode_exec_dir "/var/www/htdocs/ks011/temp"
  php_admin_flag register_globals off
  php_admin_flag safe_mode  On
  php_admin_value mail.add_x_header 1
  </VirtualHost>
In "/var/www/htdocs/web1/html/pages/autodiscover/autodiscover.php" liegt auch die entsprechende Datei.

Da Outlook ja eine XML Datei erwartet habe ich eine .htacess in diesen Ordner zu liegen:

RewriteEngine   On
RewriteRule ^(.*).xml$ $1.php

Options +FollowSymLinks
Options +Indexes


Laut Doku: => http://www.nambu.ch/blog/automatische-e-mail-konfiguration-fur-outlook müsste Outlook nun meine Adresse: https://autodiscover.domain.de/autodiscover/autodiscover.xml aufrufen.
Laut Log tuts das auch... nur bekomme folgende Fehlermeldung ins Log

Tue Apr 14 19:28:56 2015] [error] [client 123.66.123.131] PHP Parse error:  syntax error, unexpected 'version' (T_STRING) in /var/www/htdocs/ks011/html/pages/autodiscover/autodiscover.php on line 5
Leide finde ich keine andere PHP Howto Seite. Ist die Anleitung fehlerhaft oder hab ich n anderen Fehler drin?
Danke

Content-ID: 269114

Url: https://administrator.de/forum/auto-discovery-fuer-e-mail-einrichten-269114.html

Ausgedruckt am: 09.04.2025 um 09:04 Uhr

lord-icon
lord-icon 14.04.2015 aktualisiert um 20:02:31 Uhr
Goto Top
NAchtrag:
Die PHP Datei ist offensichtlich fehlerhaft.

So klappt der manuelle Aufruf:
<?php
$data = file_get_contents("php://input");  
preg_match("/\<EMailAddress\>(.*?)\<\/EMailAddress\>/", $data, $matches);  
header("Content-Type: application/xml");  

echo '<?xml version="1.0" encoding="utf-8" ?>';  
?>

<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">  
...
Nur Outlook/Thunderbird findet noch nicht die korrekten einstellungen
Dani
Dani 14.04.2015 um 21:20:14 Uhr
Goto Top
Moin,
es läuft doch sicher im Backend Exchange 2007, 2010 oder 2013. Warum also das Rad neu erfinden und nicht auf die dortige Funktion zurückgreifen. Absehen davon wäre der Exchange trotzdem direkt aus dem Internet erreichbar. Was sicherheitstechnisch - sagen wir mal - fahrlässig ist.Einen Reverseproxy brauchst du später für Active Sync, OWA oder Outlook Anywhere, wenn dir was an Sicherheit liegt. SOmit kannst du damit auch Autodiscover erschlagen und hast eine saubere Trennung.


Gruß,
Dani
lord-icon
lord-icon 15.04.2015 um 01:22:45 Uhr
Goto Top
es läuft doch sicher im Backend Exchange 2007, 2010 oder 2013.

Ja aber GANZ sicher nicht.
Linux mit Dovecot,postfix, etc.
114757
Lösung 114757 15.04.2015 aktualisiert um 14:39:23 Uhr
Goto Top
Moin,
dir ist schon klar das Outlook hier eine SSL gesicherte Seite mit einem gültigen Zertifikat erwartet !?
Laut deiner vHosts Config ist sie das nicht, und das kann so eben nicht funktionieren.

Les die Anleitung nochmal genau durch ....
Damit das XML gefunden wird, ist lediglich noch ein einfacher apache vhost nötig. Wichtig: Outlook schreibt https vor. Es muss also ein gültiges Sicherheitszertifikat für den vhost vorliegen. Damit es zu keinen Warnungen kommt sollte es ein von einer gültigen Certificate Authority signiertes Zertifikat sein. Für unseren Fall ist unser Wildcard-Zertifikat das richtige.

Und noch was, das Document-Root in deiner vHosts
DocumentRoot "/var/www/htdocs/ks011/html/pages"   
passt nun garnicht mit dem Verzeichnis überein in welchem die PHP-Datei liegt
In "/var/www/htdocs/web1/html/pages/autodiscover/autodiscover.php" liegt auch die entsprechende Datei.

Und es heißt nicht .htacess sondern .htaccess

Also nochmal penibelste alle Details überarbeiten, dann klappt das auch face-wink

Gruß jodel32