[horde] nginx rewrite problems
Ruud Baart
r.j.baart at prompt.nl
Fri Mar 27 11:40:35 UTC 2026
Hi Ralf,
I’ll explain my question a bit further. A while ago, I switched from
Horde 5 (which I’d been using for many years) to Horde 6. I was actually
forced to do so because PHP 7 was causing increasing problems when used
with other software. The transition was far from smooth. Perhaps this
was also due to my lack of familiarity with composer and Horde 6.
Ultimately, I now have a stable Debian system, Trixie (13.4), running
PHP 8.4. I’m using Nginx 1.26 and PHP-FPM.
There were still a few PHP errors with Horde/nginx, but it works. The
issues I’ve been having over the past few weeks are related to
Kronolith/DAV. The DAV calendars in Thunderbird are out of sync. The
times keep shifting. A while back, this was caused by a Thunderbird bug
in the local caching of the calendar. After updating to a new version of
Thunderbird, the problem seemed to be resolved. In recent weeks, the
problem has returned, much to the annoyance of the few users I still
support. Appointments made via the web interface or the ActiveSync
client do work properly. My first thought was that the existing rewrite
rules in the Nginx configuration were no longer sufficient. After
further consideration, I don’t actually think that’s the case.
I suspect there's an issue with the time zone between Thunderbird and
Kronolith. To troubleshoot the issue again, I decided to start by
updating the Horde 6 environment. It seems that the developers are
working very hard to achieve a stable Horde 6 environment. So I ran a
"composer update". Immediately after that, the DAV synchronization
stopped working.
Since I have the chance to give some context 🙂: first, a few questions
about the Horde 6 update. I did:
composer require horde/kronolith dev-FRAMEWORK_6_0
composer update
Next, if you check using "composer outdated", you’ll see that there are
some modules that aren’t updated automatically. The first question is:
is it a good idea or not to also update “horde/horde-installer-plugin”,
“sabre/event”, “sabre/http”, “sabre/uri”, and “sabre/xml”? I believe
that Sabre is the basis for DAV functionality. Since it doesn't update
automatically via “composer update,” I'm not sure if updating these
modules is a good idea. If the sabre modules need to be updated, it is
not clear to me how that should be done. A simple composer
update sabre/event doesn't update anything.
There are no real messages why DAV synchronization stopped working.
Debug in horde is E_ALL but I don't see errors. Not in nginx logging nor
horde logging.
Two errors, but they are not new:
(1) after a request for syncing calander:
2026/03/27 09:47:43 [error] 2843694#2843694: *172335 readv() failed
(104: Connection reset by peer) while reading upstream, client: 12.34.56.78, server: aa.bb.cc, request:"PUT
/horde/rpc/calendars/user at domain.xy/calendar~aFTuBIgXZjXzg2GLq54ZNg3/04a82709-de6c-4f8e-ba33-5f1022ddf8df.ics
HTTP/2.0", upstream: "fastcgi://unix:/run/php/php8.4-fpm.sock:",
host: "aa.bb.cc"
(2) Activesync heartbeat (I think)
2026/03/27 00:27:24 [error] 2843696#2843696: *118314 upstream timed out (110: Connection timed out) while reading
response header from upstream, client: 12.34.56.78, server: aa.bb.cc, request:
"POST /Microsoft-Server-ActiveSync?Cmd=Ping&User=user%40domain.xy&DeviceId=androidc123456&DeviceType=Android HTTP/1.1",
upstream: "fastcgi://unix:/run/php/php8.4-fpm.sock", host: "aa.bb.cc"
On my Android device with a DAV client (DAVx5) I see a new error. The
client won't sync and the debug information shows:
HTTP REQUEST
PUThttps://aa.bb.cc/horde/rpc/calendars/user@domain.xy/calendar~aFTuBIgXZjXzg2GLq54ZNg3/04a82709-de6c-4f8e-ba33-5f1022ddf8df.ics
HTTP RESPONSE
<?xml version="1.0" encoding="utf-8"?>
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
<s:sabredav-version>4.7.0</s:sabredav-version>
<s:exception>Sabre\DAV\Exception</s:exception>
<s:message>Circular dependency detected: Kronolith_Geo → Kronolith_Geo</s:message>
</d:error>
Before I can return to the problem with the incorrect hours in
Thunderbird calender syncing must be working. I need help with the
syncing problem because I can't find with is wrong and/or why.
When syncing is ok again I return to the Thunderbird calendar problem. I
suppose it is a timezone problem between cache and DAV sync. But I'm not
sure.
Sorry, quite a long story.
Op 27-3-2026 om 05:13 schreef Ralf Lang:
> Hello Ruud,
>
> can you provide some context? When you manually hit horde/rpc.php or
> /horde/rpc/ and enter your credentials what exactly happens or is shown?
>
>
> On Thu, Mar 26, 2026 at 3:37 PM Ruud Baart <r.j.baart at prompt.nl> wrote:
>
> Hi,
>
> Horde 6 + nginx has been working reasonably well over the past few
> weeks. No major issues. However kronolith gives me some problems, I
> think there are time zone problems again. Possibly caused by
> Thunderbird.
>
> To solve these problems, I started with “composer update” yesterday.
> Thing got worse and now the DAV isn't working properly anymore. It
> seems
> to me that my rewrite rules in nginx.conf are no longer correct.
> Apparently, something has changed.
>
> I'd like to see a current, working nginx configuration to compare it
> with what I have. Maybe that will help me solve the problem.
>
>
> Ruud Baart
>
> --
> Horde mailing list
> Frequently Asked Questions: http://horde.org/faq/
> To unsubscribe, mail: horde-unsubscribe at lists.horde.org
>
More information about the horde
mailing list