I see you are using nginx and port 7080 for apache.
If ever your architecture includes multiple apache servers and some kind of load balancing, then you must do something for sessions to be shared accross multiple apache server (memcached, clever load balancing, nfs, mysql, ... ).
IMHO, as you have only one webserver, there is no reason for now to try using memcached for storing sessions.
At some point, you managed to configure php to use files to store sessions but session files were not effectively written /var/lib/php/session
That is why you loose session when you jump from one page to another.
/var/lib/php/session permissions are usually fine and sessions work out the box in most linux and bsd distro.
To check that permissions are ok do the following :
Step 1 :
Check that php is configured to write to /var/lib/php/session using your url that calls phpinfo(). You should get something like :
Registered save handlers => files user
session.save_path => /var/lib/php/session
step 2 :
Check under which user apache is running both with ps and by looking at config files.
You should obtain apache , www , www-data or http.
step 3 :
Check that apache user has write access to session path.
This can be done by typing ls -ld /var;ls -ld /var/lib;ls -ld /var/php;ls -ld var/lib/php/session
or by effectively creating a file with apache user
su - www -s /bin/bash or su -m www
If permission is not the problem, we'll can try other stuff