[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