PHP Session Problems

Post general support questions here that do not specifically fall into the Linux or Windows categories.

Moderators: Developers, Moderators

Post Reply
punkcut
Posts: 5
Joined: Mon Mar 13, 2006 4:41 pm

PHP Session Problems

Post by punkcut »

Server version: Apache/2.0.54

mysql Ver 14.7 Distrib 4.1.13, for suse-linux (i686) using readline 5.0

PHP 4.4.0 (cli) (built: Feb 14 2006 01:36:09)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies

Linux localhost 2.6.13-15.7-bigsmp #1 SMP Tue Nov 29 14:32:29 UTC 2005 i686 i686 i386 GNU/Linux

I have cacti running in its own Virtual Host

I followed the directions for installing Cacti. Then when I went to the page
for it I got a whole list of session problems - This is strange because I have many webapps setup on here that use the session extension without error.

Warning: session_start() [function.session-start]: open(/var/lib/php/sess_c668000f60832daf04ab66acf3bb04f3, O_RDWR) failed: Permission denied (13) in /srv/apps/cacti/include/config.php on line 95

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /srv/apps/cacti/include/config.php:95) in /srv/apps/cacti/include/config.php on line 95

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /srv/apps/cacti/include/config.php:95) in /srv/apps/cacti/include/config.php on line 95

Warning: Cannot modify header information - headers already sent by (output started at /srv/apps/cacti/include/config.php:95) in /srv/apps/cacti/include/auth.php on line 31

Warning: Unknown(): open(/var/lib/php/sess_c668000f60832daf04ab66acf3bb04f3, O_RDWR) failed: Permission denied (13) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php) in Unknown on line 0
User avatar
gandalf
Developer
Posts: 22383
Joined: Thu Dec 02, 2004 2:46 am
Location: Muenster, Germany
Contact:

Post by gandalf »

Please verify, that php support for session and mysql is installed and configured in php.ini
Reinhard
punkcut
Posts: 5
Joined: Mon Mar 13, 2006 4:41 pm

Post by punkcut »

And besides this I also run multiple instances of Drupal/Civicspace on here.

Code: Select all

[extension section]
extension=snmp.so
extension=imap.so
extension=iconv.so
extension=ctype.so
extension=gd.so
extension=session.so
extension=mysql.so
extension=bcmath.so
; end of extension section


[Session]
; Handler used to store/retrieve data.
session.save_handler = files

; Argument passed to save_handler.  In the case of files, this is the path
; where data files are stored. Note: Windows users have to change this 
; variable in order to use PHP's session functions.
; As of PHP 4.0.1, you can define the path as:
;     session.save_path = "N;/path"
; where N is an integer.  Instead of storing all the session files in 
; /path, what this will do is use subdirectories N-levels deep, and 
; store the session data in those directories.  This is useful if you 
; or your OS have problems with lots of files in one directory, and is 
; a more efficient layout for servers that handle lots of sessions.
; NOTE 1: PHP will not create this directory structure automatically.
;         You can use the script in the ext/session dir for that purpose.
; NOTE 2: See the section on garbage collection below if you choose to
;         use subdirectories for session storage
;session.save_path = /tmp
session.save_path = /var/lib/php

; Whether to use cookies.
session.use_cookies = 1

; This option enables administrators to make their users invulnerable to
; attacks which involve passing session ids in URLs; defaults to 0.
; session.use_only_cookies = 1

; Name of the session (used as cookie name).
session.name = PHPSESSID

; Initialize session on request startup.
session.auto_start = 0

; Lifetime in seconds of cookie or, if 0, until browser is restarted.
session.cookie_lifetime = 0

; The path for which the cookie is valid.
session.cookie_path = /

; The domain for which the cookie is valid.
session.cookie_domain =

; Handler used to serialize data.  php is the standard serializer of PHP.
session.serialize_handler = php

; Define the probability that the 'garbage collection' process is started
; on every session initialization.
; The probability is calculated by using gc_probability/gc_divisor,
; e.g. 1/100 means there is a 1% chance that the GC process starts
; on each request.

session.gc_probability = 1
session.gc_divisor     = 100

; After this number of seconds, stored data will be seen as 'garbage' and
; cleaned up by the garbage collection process.
session.gc_maxlifetime = 1440

; NOTE: If you are using the subdirectory option for storing session files
;       (see session.save_path above), then garbage collection does *not*
;       happen automatically.  You will need to do your own garbage 
;       collection through a shell script, cron entry, or some other method. 
;       For example, the following script would is the equivalent of
;       setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):
;          cd /path/to/sessions; find -cmin +24 | xargs rm

; PHP 4.2 and less have an undocumented feature/bug that allows you to
; to initialize a session variable in the global scope, albeit register_globals
; is disabled.  PHP 4.3 and later will warn you, if this feature is used.
; You can disable the feature and the warning separately. At this time,
; the warning is only displayed, if bug_compat_42 is enabled.

session.bug_compat_42 = 1
session.bug_compat_warn = 1

; Check HTTP Referer to invalidate externally stored URLs containing ids.
; HTTP_REFERER has to contain this substring for the session to be
; considered as valid.
session.referer_check =

; How many bytes to read from the file.
session.entropy_length = 0

; Specified here to create the session id.
session.entropy_file =

;session.entropy_length = 16

;session.entropy_file = /dev/urandom

; Set to {nocache,private,public,} to determine HTTP caching aspects
; or leave this empty to avoid sending anti-caching headers.
session.cache_limiter = nocache

; Document expires after n minutes.
session.cache_expire = 180

; trans sid support is disabled by default.
; Use of trans sid may risk your users security. 
; Use this option with caution.
; - User may send URL contains active session ID
;   to other person via. email/irc/etc.
; - URL that contains active session ID may be stored
;   in publically accessible computer.
; - User may access your site with the same session ID
;   always using URL stored in browser's history or bookmarks.
session.use_trans_sid = 0

; The URL rewriter will look for URLs in a defined set of HTML tags.
; form/fieldset are special; if you include them here, the rewriter will
; add a hidden <input> field with the info which is otherwise appended
; to URLs.  If you want XHTML conformity, remove the form entry.
; Note that all valid entries require a "=", even if no value follows.
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset="

[MySQL]
; Allow or prevent persistent links.
mysql.allow_persistent = Off

; Maximum number of persistent links.  -1 means no limit.
mysql.max_persistent = -1

; Maximum number of links (persistent + non-persistent).  -1 means no limit.
mysql.max_links = -1

; Default port number for mysql_connect().  If unset, mysql_connect() will use
; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the
; compile-time value defined MYSQL_PORT (in that order).  Win32 will only look
; at MYSQL_PORT.
mysql.default_port =

; Default socket name for local MySQL connects.  If empty, uses the built-in
; MySQL defaults.
mysql.default_socket =

; Default host for mysql_connect() (doesn't apply in safe mode).
mysql.default_host =

; Default user for mysql_connect() (doesn't apply in safe mode).
mysql.default_user =

; Default password for mysql_connect() (doesn't apply in safe mode).
; Note that this is generally a *bad* idea to store passwords in this file.
; *Any* user with PHP access can run 'echo get_cfg_var("mysql.default_password")
; and reveal this password!  And of course, any users with read access to this
; file will be able to reveal the password as well.
mysql.default_password =

; Maximum time (in seconds) for connect timeout. -1 means no limit
mysql.connect_timeout = 60

; Trace mode. When trace_mode is active (=On), warnings for table/index scans and
; SQL-Errors will be displayed.
mysql.trace_mode = Off
[/code]
punkcut
Posts: 5
Joined: Mon Mar 13, 2006 4:41 pm

This might help too

Post by punkcut »

These are an ls -laR of the
/var/lib/php/sess_*
and
my cacti folder
Attachments
cacti.perms.txt
(29.1 KiB) Downloaded 235 times
php.session.txt
(3.44 KiB) Downloaded 283 times
User avatar
gandalf
Developer
Posts: 22383
Joined: Thu Dec 02, 2004 2:46 am
Location: Muenster, Germany
Contact:

Post by gandalf »

This may relate as well to permission issues on the file system, were session cookies are stored. But I'm no expert when it comes to this topic
Reinhard
punkcut
Posts: 5
Joined: Mon Mar 13, 2006 4:41 pm

Post by punkcut »

Bump.

Still have not found a concrete answer as to why this is happening.
Post Reply

Who is online

Users browsing this forum: manuelx89 and 1 guest