Error 500, blank page on login, after most recent upgrade


Describe the problem you’re having:
After my most recent upgrade I now get a blank page after logging in. The login page loads fine, after I enter a username/password (admin or my own account) I get a blank pager, error 500

If possible include steps to reproduce the problem:

  1. git pull
  2. Navigate to instance login page
  3. Try to login
  4. Error 500, blank page, blank page source

tt-rss version (including git commit id):
commit c9040c5c2e3960cd3668dd0cfe7621c5536ed37e
Merge: 9f7bd15 86810de
Author: fox
Date: Tue Jul 11 04:18:11 2017 +0000

Platform (i.e. Linux distro, PHP, PostgreSQL, etc) versions:
CentOS 6.8 64-bit
PHP 7.0.20
Apache 2.2.15-59
MariaDB 10.2.7-1

Please provide any additional information below:
Pre-upgrade everything was working fine with the above software package versions
I’ve removed the only additional plugin (fever-api) and additional theme (feedly) I’d installed, didn’t help
I manually ran the database upgrade via ‘php update.php’ which succeeded
I manually ran a feed update via ‘php update.php’ which completed with no errors
I blew away the cache directory and re-created it
I decrypted my feeds per the note in config.php (php update.php --decrypt-feeds)
I copied my old config.php and re-configured a brand new one from scratch
I’ve restarted Apache
I’ve tried with multiple browsers to login to tt-rss post upgrade, all give error 500 (some browsers I tested have Lastpass, some don’t)
There is nothing useful in my sites apache error log other than a missing favicon.ico warning
This is all I see in my apache access log after a login attempt:
"POST /public.php?return=%2F HTTP/1.1" 500 - "" "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"


Blank white page HTTP 500 generally means there’s a PHP Fatal error. You’ll want to track down the PHP error.log for more insight.


you can also try going back to previous commits until it starts working (git checkout etc)

without php error logs its hard to tell why this happens so I suggest you locate those


I’ve enabled PHP logging and verified it’s working via other PHP pages

No PHP errors are being logged for my tt-rss install when I try to load it and login.

I’ll try reverting versions.


Found the problem.

A very long time ago, to get around the login time-out, I made this change to my config.php

define('SESSION_COOKIE_LIFETIME', 86400*999999);

Seems this doesn’t work anymore and results in a Error 500, blank page after login.

Removing it fixed the issue. After some trial and error this is the new maximum allowed:

define('SESSION_COOKIE_LIFETIME', 86400*999);


it’d be useful to see the exact error message


All I have is what I’ve shared.

Guess browsers/servers/php don’t like cookies that expire in 2291

Doesn’t work

value	"<RANDOM STUFF>"
expires	"2291-04-26T19:44:47.000Z"
path	"/"
secure	true


Name	ttrss_sid_ssl
Path	/
Expires	Mon, 06 Apr 2020 19:47:49 GMT
Secure	Yes
HttpOnly	No


Odd though since my client os, client browser, server, apache and PHP are all 64-bit


I get that you hate logging in, but is 999999 days really necessary? I’m surprised it ever worked.

Anyway, I hated logging in too so I just switched to certificate authentication and now I never need to.


I think it was just a number I threw in there when I configured it.


integer overflow is actually related to the database:

Query INSERT INTO ttrss_sessions (id, data, expire) VALUES ('xxx', '', '87899838429') failed: ERROR: value "87899838429" is out of range for type integer LINE 2: VALUES ('xxx', '', '87899838429'... ^



That doesn’t sound right. What if SESSION_COOKIE_LIFETIME is 4294967296 (0x100000000)?


yeah i guess it would be better to use min(2147483647, …) here (signed int to be on the safe side)

e: this also needs to account for initial timestamp eghhh