Ja, mit SSL funktioniert es jetzt.
Auch die Mails zur Passwortumstellung funktionieren jetzt für Mail-Adressen außerhalb der Domain.
Ganz herzlichen Dank.
Das hat mir sehr weitergeholfen.
Um schreiben oder kommentieren zu können, benötigen Sie ein Benutzerkonto.
Sie haben schon ein Benutzerkonto? Melden Sie sich hier an.
Jetzt anmeldenHier können Sie ein neues Benutzerkonto erstellen.
Neues Benutzerkonto erstellenJa, mit SSL funktioniert es jetzt.
Auch die Mails zur Passwortumstellung funktionieren jetzt für Mail-Adressen außerhalb der Domain.
Ganz herzlichen Dank.
Das hat mir sehr weitergeholfen.
Vielen Dank für die schnelle Antwort.
Also, soweit schon mal ein Fortschritt.
Jetzt kämpfe ich mit dem SMTP Plugin (WP Mail SMTP):
Als E-Mail Versandanbieter habe ich "Anderer SMTP Server" gewählt und für den die SMTP Verbindungsdaten für das STRATO Admin-Konto verwendet.
Mit den selben Einstellungen habe ich in meinem Outlook Client ein Konto eingerichtet.
Da funktionieren Mail-Versand und -Empfang.
Bei WP Mail SMTP bekomme ich bei einer Testmail (auch mit deaktivierten anderen Plugins) den Fehler:
Versions:
WordPress: 6.5.4
WordPress MS: No
PHP: 8.2.18
WP Mail SMTP: 4.0.1
Params:
Mailer: smtp
Constants: No
ErrorInfo: SMTP Error: Could not connect to SMTP host.
Host: smtp.strato.de
Port: 465
SMTPSecure: tls
SMTPAutoTLS: bool(true)
SMTPAuth: bool(true)
Server:
OpenSSL: OpenSSL 3.0.13 30 Jan 2024
Debug:
E-Mail-Quelle WP Mail SMTP
Mailer: Anderer SMTP-Server
SMTP Error: Could not connect to SMTP host.
SMTP Debug:
2024-06-15 17:20:47 Connection: opening to smtp.strato.de:465, timeout=300, options=array()
2024-06-15 17:20:47 Connection: opened
2024-06-15 17:21:47 SERVER -> CLIENT:
2024-06-15 17:21:47 Connection: closing due to error
2024-06-15 17:21:47 Connection: closed
SMTP Error: Could not connect to SMTP host.
Alles anzeigen
Hallo,
ich habe zu dieser Frage zwar einige Einträge gefunden aber keiner passte so richtig.
Vielleicht kann mir hier jemand helfen?
Ich bin dabei, eine Website mit WP 6.5.4 bei STRATO aufzubauen.
WP ist so konfiguriert, dass sich Benutzer nicht selbst registrieren können.
Neben anderen, habe ich die folgenden Plugins aktiviert: "Force Login", "Force Password Change", "Password Policy Manager".
(Allerdings habe ich auch den Fall getestet, bei dem alle Plugins deaktiviert waren)
Neben dem Administrator-User habe ich mir einen zweiten Benutzer mit Rolle "Abonnent" angelegt.
Obwohl ich beim Anlegen festgelegt hatte: "Der Benutzer soll eine E-Mail zu seinem Konto erhalten", wurde keine Mail verschickt und auch keine Fehlermeldung ausgegeben.
Es wurde lediglich eine Mail an die Mail-Adresse des Administrators geschickt.
Wenn ich im Login-Dialog die Option "Passwort vergessen?" wähle und Benutzername bzw. Mailadresse (ich habe beides versucht) des zweiten Benutzers angebe, wird keine Mail zum Zurücksetzen des Passworts gesendet.
Auch wenn ich die Rolle dieses Benutzers in Administrator ändere, geschieht dies nicht.
Wenn ich das Gleiche mit dem ursprünglichen Administrator-Benutzer mache, wird eine Mail zum Zurücksetzen des Passworts gesendet.
Ich habe dann versucht in der Konfiguration die Administrator-E-Mail-Adresse zu ändern in die Mail-Adresse des zweiten Benutzers (der auch die Administrator Rolle hat).
Dabei sollte eine Mail an die neue Adresse geschickt werden, um die Änderung zu bestätigen.
Auch das erfolgt nicht.
Zum Testen habe ich auch mit dem Plugin "Check & Log Email" eine Testmail an die Adresse des zweiten Benutzers geschickt (zur Sicherheit die Mailadresse aus den Benutzereinstellungen kopiert).
Dabei wurde die Mail verschickt und erhalten.
So, wie es aussieht, scheint WordPress ausschließlich Mails an den als ersten Administrator registrierten Benutzer zu schicken und sonst an keinen anderen.
Vielleicht liegt es auch daran, dass das die Mail-Adresse ist, unter der die STRATO Domain registriert ist?
Fehlt da noch etwas an der WP Konfiguration?
Oder liegt das Problem eventuell bei STRATO?
Sorry, dass die Problembeschreibung so lang geraten ist, aber ich habe wirklich alles was, mir sinnvoll erschien, probiert.
Danke für einen hilfreichen Tipp.
# Block the include-only files.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>
<Files wp-config.php>
<IfModule !mod_authz_core.c>
order allow,deny
deny from all
</IfModule>
<IfModule mod_authz_core.c>
require all denied
</IfModule>
</Files>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^wp-content/uploads/(.*)$ dl-file.php?file=$1 [QSA,L]
</IfModule>
# BEGIN WordPress
# Die Anweisungen (Zeilen) zwischen „BEGIN WordPress“ und „END WordPress“ sind
# dynamisch generiert und sollten nur über WordPress-Filter geändert werden.
# Alle Änderungen an den Anweisungen zwischen diesen Markierungen werden überschrieben.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Alles anzeigen
Danke für das Feedback.
Mein Ansatz ist eigentlich auch der über .htaccess.
Ich habe in die .htaccess folgende Zeilen vor dem WordPress-generierten Teil eingefügt:
RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^wp-content/uploads/(.*)$ dl-file.php?file=$1 [QSA,L]
Als dl-file.php habe ich die Vorlage von https://gist.github.com/hakre/1552239 genommen.
Darin wird zunächst geprüft, ob ein User eingeloggt ist und wenn nicht, wird auf den Login-Dialog umgeleitet.
Die erzwungene Umleitung auf den Login-Dialog funktioniert auch, aber nach erfolgreicher Anmeldung gibt es einen "Not found" Fehler beim Zugriff auf die gewünschte Datei.
Ich wollte das dann debuggen und bin nach der Anleitung https://developer.wordpress.org/advanced-admin…ebug-wordpress/ vorgegangen:
In wp-config.php:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
define( 'SCRIPT_DEBUG', true );
Habe sicherheitshalber auch noch ein debug.log in wp-content angelegt.
Aber es wurden keine debug-Einträge erzeugt.
Was mache ich da falsch?
Hallo,
ich nutze WordPress 6.5.3 bei STRATO.
Auf einer Familien-Seite möchte ich einen Stammbaum zugänglich machen, der mit Family Historian 7 (https://www.family-historian.co.uk/) erstellt wurde.
Der Zugang soll dabei nur für registrierte Benutzer möglich sein.
Der Stammbaum liegt als Web-Struktur (HTML, JS, CSS, Medien-Dateien) in einem einzigen Verzeichnis vor (einige hundert Files).
Da bei jeder Änderung die Web Site mit Family Historian neu generiert wird, kommt eine direkte Übernahme in WordPress nicht in Frage.
Auch der Import des GEDCOM Files in das WP Genealogy Plugin ist nicht wirklich praktisch.
Was ich bisher versucht habe, ist Folgendes:
Das Problem ist jetzt allerdings, dass im ./uploads Verzeichnis alle Ressourcen öffentlich zugänglich sind.
Das ./uploads Verzeichnis mittels .htaccess RewriteRule zu schützen (http://wordpress.stackexchange.com/a/37743/48165) habe ich versucht, bekomme dabei aber immer nur einen 404.
Auch nach längerer Suche habe ich bisher leider keine andere gangbare Lösung gefunden; auch hier im Forum nicht.
Allerdings mache ich gerade meine ersten Schritte mit WP und bin mir nicht sicher ob ich mit meiner Vorgehensweise nicht auf dem völlig falschen Dampfer bin.
Für Rat und Unterstützung wäre ich sehr dankbar.