Hi,
I've been struggling with the following error for quite some time:
Invalid request! No data was saved.
I get this error message every time I try to log into a account.
I already tried deleting the browser cache and the sessions stored in the database but no success.
This is the system roundcube is running on:
$ uname -a FreeBSD webmail.<server> 10.1-RELEASE-p19 FreeBSD 10.1-RELEASE-p19 #0: Sat Aug 22 03:55:09 UTC 2015 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
$ pkg info roundcube roundcube-1.1.0,1 Name : roundcube Version : 1.1.0,1 Installed on : Mon Sep 14 10:01:13 CEST 2015 Origin : mail/roundcube Architecture : freebsd:10:x86:64
$ pkg info | grep "^php" php56-5.6.6 PHP Scripting Language php56-dom-5.6.6 The dom shared extension for php php56-filter-5.6.6 The filter shared extension for php php56-iconv-5.6.6 The iconv shared extension for php php56-json-5.6.6 The json shared extension for php php56-mbstring-5.6.6 The mbstring shared extension for php php56-mysql-5.6.6 The mysql shared extension for php php56-pdo-5.6.6 The pdo shared extension for php php56-pdo_mysql-5.6.6 The pdo_mysql shared extension for php php56-session-5.6.6 The session shared extension for php php56-xml-5.6.6 The xml shared extension for php php56-zip-5.6.6 The zip shared extension for php
$ grep "14/Sep" /var/log/httpd-access.log 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET / HTTP/1.1" 200 5800 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /skins/larry/styles.min.css?s=1423403009 HTTP/1.1" 200 52972 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /program/js/jstz.min.js?s=1423403008 HTTP/1.1" 200 6927 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /program/js/common.min.js?s=1423403008 HTTP/1.1" 200 13884 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /program/js/jquery.min.js?s=1423403008 HTTP/1.1" 200 85683 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /skins/larry/ui.min.js?s=1423403009 HTTP/1.1" 200 25603 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /program/js/app.min.js?s=1423403008 HTTP/1.1" 200 141002 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css?s=1423403008 HTTP/1.1" 200 43661 127.0.2.2 - - [14/Sep/2015:10:11:36 +0200] "GET /skins/larry/images/selector.png HTTP/1.1" 200 181 127.0.2.2 - - [14/Sep/2015:10:11:36 +0200] "GET /skins/larry/images/splitter.png HTTP/1.1" 200 136 127.0.2.2 - - [14/Sep/2015:10:11:36 +0200] "GET /skins/larry/images/watermark.jpg HTTP/1.1" 200 5000 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /skins/larry/images/ajaxloader.gif?v=c252.1434 HTTP/1.1" 200 1434 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "POST /?_task=login HTTP/1.1" 200 5923 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /skins/larry/styles.min.css?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /program/js/jquery.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /program/js/app.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /skins/larry/ui.min.js?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /program/js/jstz.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /plugins/jqueryui/js/jquery-ui-1.10.4.custom.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /program/js/common.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /skins/larry/images/messages.png?v=3a4f.1461 HTTP/1.1" 200 1461 127.0.2.4 - - [14/Sep/2015:10:11:49 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.4 - - [14/Sep/2015:10:11:50 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.4 - - [14/Sep/2015:10:11:51 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.4 - - [14/Sep/2015:10:11:52 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.4 - - [14/Sep/2015:10:11:53 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /skins/larry/images/ajaxloader.gif?v=c252.1434 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "POST /?_task=login HTTP/1.1" 200 5923 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /skins/larry/styles.min.css?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /skins/larry/ui.min.js?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /program/js/jquery.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /program/js/common.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /program/js/app.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /program/js/jstz.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /plugins/jqueryui/js/jquery-ui-1.10.4.custom.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /skins/larry/images/ajaxloader.gif?v=c252.1434 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "POST /?_task=login HTTP/1.1" 200 5923 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /skins/larry/styles.min.css?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /skins/larry/ui.min.js?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /program/js/jquery.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /program/js/common.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /program/js/app.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /program/js/jstz.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /plugins/jqueryui/js/jquery-ui-1.10.4.custom.min.js?s=1423403008 HTTP/1.1" 304 -
Not httpd errors.
An internet search query didn't resolve any suggestions where to go to further debug the problem. What can cause such an error?
Any help is very much appreciated.
Best,
I can confirm this issue.
Michael Heydekamp Co-Admin freexp.de Düsseldorf/Germany
Am 14.09.2015 10:24, schrieb Niklaas Baudet von Gersdorff:
Hi,
I've been struggling with the following error for quite some time:
Invalid request! No data was saved.
I get this error message every time I try to log into a account.
I already tried deleting the browser cache and the sessions stored in the database but no success.
This is the system roundcube is running on:
$ uname -a FreeBSD webmail.<server> 10.1-RELEASE-p19 FreeBSD 10.1-RELEASE-p19 #0: Sat Aug 22 03:55:09 UTC 2015 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
$ pkg info roundcube roundcube-1.1.0,1 Name : roundcube Version : 1.1.0,1 Installed on : Mon Sep 14 10:01:13 CEST 2015 Origin : mail/roundcube Architecture : freebsd:10:x86:64
$ pkg info | grep "^php" php56-5.6.6 PHP Scripting Language php56-dom-5.6.6 The dom shared extension for php php56-filter-5.6.6 The filter shared extension for php php56-iconv-5.6.6 The iconv shared extension for php php56-json-5.6.6 The json shared extension for php php56-mbstring-5.6.6 The mbstring shared extension for php php56-mysql-5.6.6 The mysql shared extension for php php56-pdo-5.6.6 The pdo shared extension for php php56-pdo_mysql-5.6.6 The pdo_mysql shared extension for php php56-session-5.6.6 The session shared extension for php php56-xml-5.6.6 The xml shared extension for php php56-zip-5.6.6 The zip shared extension for php
$ grep "14/Sep" /var/log/httpd-access.log 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET / HTTP/1.1" 200 5800 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /skins/larry/styles.min.css?s=1423403009 HTTP/1.1" 200 52972 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /program/js/jstz.min.js?s=1423403008 HTTP/1.1" 200 6927 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /program/js/common.min.js?s=1423403008 HTTP/1.1" 200 13884 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /program/js/jquery.min.js?s=1423403008 HTTP/1.1" 200 85683 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /skins/larry/ui.min.js?s=1423403009 HTTP/1.1" 200 25603 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /program/js/app.min.js?s=1423403008 HTTP/1.1" 200 141002 127.0.2.2 - - [14/Sep/2015:10:11:35 +0200] "GET /plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css?s=1423403008 HTTP/1.1" 200 43661 127.0.2.2 - - [14/Sep/2015:10:11:36 +0200] "GET /skins/larry/images/selector.png HTTP/1.1" 200 181 127.0.2.2 - - [14/Sep/2015:10:11:36 +0200] "GET /skins/larry/images/splitter.png HTTP/1.1" 200 136 127.0.2.2 - - [14/Sep/2015:10:11:36 +0200] "GET /skins/larry/images/watermark.jpg HTTP/1.1" 200 5000 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /skins/larry/images/ajaxloader.gif?v=c252.1434 HTTP/1.1" 200 1434 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "POST /?_task=login HTTP/1.1" 200 5923 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /skins/larry/styles.min.css?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /program/js/jquery.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /program/js/app.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /skins/larry/ui.min.js?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /program/js/jstz.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /plugins/jqueryui/js/jquery-ui-1.10.4.custom.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /program/js/common.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:11:42 +0200] "GET /skins/larry/images/messages.png?v=3a4f.1461 HTTP/1.1" 200 1461 127.0.2.4 - - [14/Sep/2015:10:11:49 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.4 - - [14/Sep/2015:10:11:50 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.4 - - [14/Sep/2015:10:11:51 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.4 - - [14/Sep/2015:10:11:52 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.4 - - [14/Sep/2015:10:11:53 +0200] "OPTIONS * HTTP/1.0" 200 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /skins/larry/images/ajaxloader.gif?v=c252.1434 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "POST /?_task=login HTTP/1.1" 200 5923 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /skins/larry/styles.min.css?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /skins/larry/ui.min.js?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /program/js/jquery.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /program/js/common.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /program/js/app.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /program/js/jstz.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:13:01 +0200] "GET /plugins/jqueryui/js/jquery-ui-1.10.4.custom.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /skins/larry/images/ajaxloader.gif?v=c252.1434 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "POST /?_task=login HTTP/1.1" 200 5923 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /skins/larry/styles.min.css?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /skins/larry/ui.min.js?s=1423403009 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /program/js/jquery.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /program/js/common.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /program/js/app.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /program/js/jstz.min.js?s=1423403008 HTTP/1.1" 304 - 127.0.2.2 - - [14/Sep/2015:10:14:05 +0200] "GET /plugins/jqueryui/js/jquery-ui-1.10.4.custom.min.js?s=1423403008 HTTP/1.1" 304 -
Not httpd errors.
An internet search query didn't resolve any suggestions where to go to further debug the problem. What can cause such an error?
Any help is very much appreciated.
Best,
--
Niklaas _______________________________________________ Roundcube Users mailing list users@lists.roundcube.net http://lists.roundcube.net/mailman/listinfo/users
On 14/09/15 10:24, Niklaas Baudet von Gersdorff (by way of Niklaas Baudet von Gersdorff niklaas@kulturflatrate.net) wrote:
I've been struggling with the following error for quite some time:
Invalid request! No data was saved.
[...]
Could it be that this is related to the fact that I run roundcube behind a reverse proxy?
Am 18.09.2015 15:37, schrieb Niklaas Baudet von Gersdorff:
On 14/09/15 10:24, Niklaas Baudet von Gersdorff (by way of Niklaas Baudet von Gersdorff niklaas@kulturflatrate.net) wrote:
I've been struggling with the following error for quite some time:
Invalid request! No data was saved.
[...]
Could it be that this is related to the fact that I run roundcube behind a reverse proxy?
I don't think so, as this is not the case here.
But I'm hoping that one of the devs will shed some light on it, as to when this error will occur. I'm seeing it for a few weeks now.
Michael Heydekamp Co-Admin freexp.de Düsseldorf/Germany
On 09/23/2015 10:53 PM, Michael Heydekamp wrote:
But I'm hoping that one of the devs will shed some light on it, as to when this error will occur. I'm seeing it for a few weeks now.
"Invalid request! No data was saved" indicates CSRF security token check fails. Something is wrong with session or something (proxy?) removes X-Roundcube-Request header (or less likely POST parameter).
Test with disabled all plugins and use most recent stable version.
On 24/09/15 09:16, A.L.E.C wrote:
"Invalid request! No data was saved" indicates CSRF security token check fails. Something is wrong with session or something (proxy?) removes X-Roundcube-Request header (or less likely POST parameter).
I am quite sure that that it's related to proxying roundcube. I got it working by moving it outside of the proxy. Since then I don't get the error message anymore.
What is necessary to setup roundcube behind an Apache proxy? I tried to get it work with a simple
# proxy the connection to webmail
ProxyPass /webmail/ http://127.0.2.4/
ProxyPassReverse /webmail/ http://127.0.2.4/
ProxyPassReverseCookiePath /webmail/ /
I am not sure about the ProxyPassReverseCookiePath
setting.
I haven't tried it with nginx yet though. Maybe a simple
location / { proxy_pass http://127.0.2.4; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }
does it. Any experience?
For proxying Roundcube, nginx works great.
My nginx server is TLS-only, and proxies everything for another server, hence the location of "/", such as "nginx-server.tld/roundcube => rc-server.tld/roundcube". It looks like you might want "/webmail" on the proxy, and "/" on the roundcube host, so replace my "location /" with "location /webmail/" below.
If this works: https://nginx-server.tld/webmail/ but not: https://nginx-server.tld/webmail (no trailing /) then add another location directive with a rewrite:
location /webmail { rewrite ^/webmail /webmail/ permanent; }
location /webmail/ { proxy_pass http://127.0.2.4; ... }
My example config:
# # HTTPS only server # server { listen 443; server_name your.hostname.tld;
error_log /var/log/nginx/error.log warn;
ssl on; ssl_certificate /etc/ssl/your-certs/your-cert.pem; ssl_certificate_key /etc/ssl/your-certs/your-cert.key; ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "HIGH:MEDIUM:!aNULL:!MD5:!3DES"; ssl_prefer_server_ciphers on;
# Public Key Pinning # https://developer.mozilla.org/en-US/docs/Web/Security/Public_Key_Pinning add_header Public-Key-Pins 'pin-sha256="key-fingerprint...=; max-age=5184000; includeSubDomains';
location / { # http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass proxy_pass https://some-roundcube-server.tld; proxy_http_version 1.1; proxy_redirect default; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwared-For $proxy_add_x_forwarded_for; } }
Good luck!
On Thu, Sep 24, 2015 at 2:33 AM, Niklaas Baudet von Gersdorff < niklaas@kulturflatrate.net> wrote:
On 24/09/15 09:16, A.L.E.C wrote:
"Invalid request! No data was saved" indicates CSRF security token check fails. Something is wrong with session or something (proxy?) removes X-Roundcube-Request header (or less likely POST parameter).
I am quite sure that that it's related to proxying roundcube. I got it working by moving it outside of the proxy. Since then I don't get the error message anymore.
What is necessary to setup roundcube behind an Apache proxy? I tried to get it work with a simple
# proxy the connection to webmail ProxyPass /webmail/ http://127.0.2.4/ ProxyPassReverse /webmail/ http://127.0.2.4/ ProxyPassReverseCookiePath /webmail/ /
I am not sure about the
ProxyPassReverseCookiePath
setting.I haven't tried it with nginx yet though. Maybe a simple
location / { proxy_pass http://127.0.2.4; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }
does it. Any experience?
--
Niklaas
Roundcube Users mailing list users@lists.roundcube.net http://lists.roundcube.net/mailman/listinfo/users
On 24/09/15 18:29, Gnul Char wrote:
For proxying Roundcube, nginx works great.
[..]
If this works: https://nginx-server.tld/webmail/ but not: https://nginx-server.tld/webmail (no trailing /) then add another location directive with a rewrite:
[...]
Thanks a lot for the configuration examples!
I guess I should give nginx a try. With apache's mod_proxy I have a similar problem in connection to a completely different set-up with another webapp.
Am 24.09.2015 09:16, schrieb A.L.E.C:
On 09/23/2015 10:53 PM, Michael Heydekamp wrote:
But I'm hoping that one of the devs will shed some light on it, as to when this error will occur. I'm seeing it for a few weeks now.
"Invalid request! No data was saved" indicates CSRF security token check fails. Something is wrong with session or something (proxy?) removes X-Roundcube-Request header (or less likely POST parameter).
Test with disabled all plugins and use most recent stable version.
I didn't have the time and opportunity to investigate this further, so the problem did persist for approx. half a year now - and since a few days, all of a sudden it is gone.
As we didn't change anything at our end - did you do anything which could have solved the issue...?
I had the issue always when I logged in a second time but with a different (sub-)domain. The first attempt of the second login failed with "Invalid request!", the second attempt then worked.
Michael Heydekamp Co-Admin freexp.de Düsseldorf/Germany