Loading...
 
Skip to main content

Architecture / Installation


session_start() and invalid argument(22) error on windows xp....

posts: 6 Austria

Hi all,
Two days ago I installed tiki 1.8. I am running apache 2.047, php 4.3.3 and mysql 4.1 under windows xpthey all work fine. The tiki tables are in the databaseno worries. However, on my "homepage" I get the following errors:


Warning: session_start(): open(\\sess_89f5005ebc0d62b0474ed561425a3153, O_RDWR) failed: Invalid argument (22) in C:\Apache Group\Apache2\htdocs\tiki\tiki-setup_base.php on line 46

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at C:\Apache Group\Apache2\htdocs\tiki\tiki-setup_base.php:46) in C:\Apache Group\Apache2\htdocs\tiki\tiki-setup_base.php on line 46

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at C:\Apache Group\Apache2\htdocs\tiki\tiki-setup_base.php:46) in C:\Apache Group\Apache2\htdocs\tiki\tiki-setup_base.php on line 46

Warning: session_write_close(): open(\\sess_89f5005ebc0d62b0474ed561425a3153, O_RDWR) failed: Invalid argument (22) in C:\Apache Group\Apache2\htdocs\tiki\lib\search\refresh.php on line 5

Warning: session_write_close(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (\) in C:\Apache Group\Apache2\htdocs\tiki\lib\search\refresh.php on line 5

I think it is my php.ini configuration...but I'm not sure. I have my temp file in place for sessions...so what am I missing? I would appreciate suggestions from anyone more technoloically gifted than I...which is just about everyone....but I'm trying.

Thanks,
Larry

posts: 7

you need to set the save path for php sessions in your php.ini file (which should be in c:\windows)

search for:

session.save_path =

and put a temp folder there (or whatever you want):
session.save_path = c:/temp

restart apache to make it read the new settings. this should work ๐Ÿ˜Ž


posts: 6 Austria

Hello ossipetz,
Thank you for your suggestion...but it did not work. I believe when you give a path in windows frontslashes(\) are used as opposed to backslashes(/). In any case, I still tried...but to no avail. I have tried just about everything I can think of...except the right answer. I still believe this to be an issue with my php.ini configuration but it's always difficult to find correct documentation for open source software run on a windows box. Any other suggestions would be much appreciated.


Thanks again,
Larry

posts: 7

> Thank you for your suggestion...but it did not work.
>

well its supposed to work ๐Ÿ˜Š

in php.ini it doesnt matter a lot if you use / or \ within you path's. php will understand you. i am using / but all other folk seems to use \ (only one, dont escape it like: \\)

now: apache needs to have write access to the temp folder, or the user that is running apache. make sure it is allowed to do so.

also dont use spaces in that path or "quote" the path in the php.ini

and well there is plenty of documentation for php/apache and windows.

http://httpd.apache.org/docs-2.0/platform/windows.html
http://www.php.net/manual/en/install.apache2.php

for some comments on the php.ini file look at: http://www.php.net/manual/en/configuration.php

all you probably need to do is go slowly through the php.ini file and adjust all the paths.

most of your errors (headers already sent...) are follow-ups from the session-create call.

note to put php.ini in c:\windows
(use in a dos-box: > echo %SystemRoot% to be sure which folder)

if you use notepad to edit php.ini the file might be php.ini.txt (use folder-options to make sure the fileextension is correct and shown).

its just the first jump. in a few hours you'll never have that problem again - trust me ๐Ÿ˜Š

posts: 6 Austria

> ossipetz:
> > Thank you for your suggestion...but it did not work.
> >
>
> well its supposed to work ๐Ÿ˜Š
>
> in php.ini it doesnt matter a lot if you use / or \ within you path's. php will understand you. i am using / but all other folk seems to use \ (only one, dont escape it like: \\)
>
> now: apache needs to have write access to the temp folder, or the user that is running apache. make sure it is allowed to do so.
>
> also dont use spaces in that path or "quote" the path in the php.ini
>
> and well there is plenty of documentation for php/apache and windows.
>
> http://httpd.apache.org/docs-2.0/platform/windows.html
> http://www.php.net/manual/en/install.apache2.php
>
> for some comments on the php.ini file look at: http://www.php.net/manual/en/configuration.php
>
> all you probably need to do is go slowly through the php.ini file and adjust all the paths.
>
> most of your errors (headers already sent...) are follow-ups from the session-create call.
>
> note to put php.ini in c:\windows
> (use in a dos-box: > echo %SystemRoot% to be sure which folder)
>
> if you use notepad to edit php.ini the file might be php.ini.txt (use folder-options to make sure the fileextension is correct and shown).
>
> its just the first jump. in a few hours you'll never have that problem again - trust me ๐Ÿ˜Š
>
>




Hello ossipetz,
I have spent the entire morning going over your suggestion...no dice. I still can't
manage to get this to work. I have reconfigured multiple paths many times.
Apache has write access permission, the file extension is correct. I have gone over much of the documentation you were kind enough to post links to. Garnichts
...nothing at all. The temp files exist and the paths are, to me, correct. I have no doubt your solution works...unfortunately not on my box. Windows is a strange beast. Anyways, I have a question for you. What does "invalid argument(22) mean here?:

Warning: session_start(): open(\\sess_0106a417db74396e89e1f53e48219ac2, O_RDWR) failed: Invalid argument (22) in C:\Apache Group\Apache\htdocs\tiki\tiki-setup_base.php on line 46


I suspect the problem is here...which means your solution is correct for a different
situation. Any suggestions? I greatly appreciate your help.

Thanks,
Larry

posts: 7

strangeness all over ๐Ÿ˜•

what is the setting of
session.save_handler =

in your php.ini?

can apache read the php.ini file? (permissions to do so?)

have you tried to check the settings php uses? (to be safe you edit the proper php.ini)

info.php:


or turn error_reporting to E_ALL ?

also you may try using an older/newer php-version?


posts: 7

> Thank you for your suggestion...but it did not work.
>

well its supposed to work ๐Ÿ˜Š

in php.ini it doesnt matter a lot if you use / or \ within you path's. php will understand you. i am using / but all other folk seems to use \ (only one, dont escape it like: \\)

now: apache needs to have write access to the temp folder, or the user that is running apache. make sure it is allowed to do so.

also dont use spaces in that path or "quote" the path in the php.ini

and well there is plenty of documentation for php/apache and windows.

http://httpd.apache.org/docs-2.0/platform/windows.html
http://www.php.net/manual/en/install.apache2.php

for some comments on the php.ini file look at: http://www.php.net/manual/en/configuration.php

all you probably need to do is go slowly through the php.ini file and adjust all the paths.

most of your errors (headers already sent...) are follow-ups from the session-create call.

note to put php.ini in c:\windows
(use in a dos-box: > echo %SystemRoot% to be sure which folder)

if you use notepad to edit php.ini the file might be php.ini.txt (use folder-options to make sure the fileextension is correct and shown).

its just the first jump. in a few hours you'll never have that problem again - trust me ๐Ÿ˜Š

posts: 6 Austria

> ossipetz:
> > Thank you for your suggestion...but it did not work.
> >
>
> well its supposed to work ๐Ÿ˜Š
>
> in php.ini it doesnt matter a lot if you use / or \ within you path's. php will understand you. i am using / but all other folk seems to use \ (only one, dont escape it like: \\)
>
> now: apache needs to have write access to the temp folder, or the user that is running apache. make sure it is allowed to do so.
>
> also dont use spaces in that path or "quote" the path in the php.ini
>
> and well there is plenty of documentation for php/apache and windows.
>
> http://httpd.apache.org/docs-2.0/platform/windows.html
> http://www.php.net/manual/en/install.apache2.php
>
> for some comments on the php.ini file look at: http://www.php.net/manual/en/configuration.php
>
> all you probably need to do is go slowly through the php.ini file and adjust all the paths.
>
> most of your errors (headers already sent...) are follow-ups from the session-create call.
>
> note to put php.ini in c:\windows
> (use in a dos-box: > echo %SystemRoot% to be sure which folder)
>
> if you use notepad to edit php.ini the file might be php.ini.txt (use folder-options to make sure the fileextension is correct and shown).
>
> its just the first jump. in a few hours you'll never have that problem again - trust me ๐Ÿ˜Š
>
>




Hello ossipetz,
I have spent the entire morning going over your suggestion...no dice. I still can't
manage to get this to work. I have reconfigured multiple paths many times.
Apache has write access permission, the file extension is correct. I have gone over much of the documentation you were kind enough to post links to. Garnichts
...nothing at all. The temp files exist and the paths are, to me, correct. I have no doubt your solution works...unfortunately not on my box. Windows is a strange beast. Anyways, I have a question for you. What does "invalid argument(22) mean here?:

Warning: session_start(): open(\\sess_0106a417db74396e89e1f53e48219ac2, O_RDWR) failed: Invalid argument (22) in C:\Apache Group\Apache\htdocs\tiki\tiki-setup_base.php on line 46


I suspect the problem is here...which means your solution is correct for a different
situation. Any suggestions? I greatly appreciate your help.

Thanks,
Larry

posts: 7

strangeness all over ๐Ÿ˜•

what is the setting of
session.save_handler =

in your php.ini?

can apache read the php.ini file? (permissions to do so?)

have you tried to check the settings php uses? (to be safe you edit the proper php.ini)

info.php:


or turn error_reporting to E_ALL ?

also you may try using an older/newer php-version?


posts: 1001 Canada

Sorry, but we actually released a hardcoded dir path in 1.8.0 in search/refresh.php.
Get a CVS tarball.
By the way, I don't think Tiki can work with MySQL 4.1 ๐Ÿ˜‘

posts: 6 Austria

> Chealer9:
> Sorry, but we actually released a hardcoded dir path in 1.8.0 in search/refresh.php.
> Get a CVS tarball.
> By the way, I don't think Tiki can work with MySQL 4.1 ๐Ÿ˜‘


Hello Chealer9,
Thanks for your suggestion. I downloaded and installed the cvs tarball. Same problem...it's driving me nuts. I have re-installed tiki numerous times...tried various php.ini configurations for my temp file...garnichts...nothing at all. Any other suggestions would be appreciated. By the way, I have mysql 4.0.18 not 4.1..ooopps.

Thanks,
larry


posts: 6 Austria

> Chealer9:
> Sorry, but we actually released a hardcoded dir path in 1.8.0 in search/refresh.php.
> Get a CVS tarball.
> By the way, I don't think Tiki can work with MySQL 4.1 ๐Ÿ˜‘


Hello Chealer9,
Thanks for your suggestion. I downloaded and installed the cvs tarball. Same problem...it's driving me nuts. I have re-installed tiki numerous times...tried various php.ini configurations for my temp file...garnichts...nothing at all. Any other suggestions would be appreciated. By the way, I have mysql 4.0.18 not 4.1..ooopps.

Thanks,
larry


posts: 1001 Canada

Hi again,
are you using this server for other things or only for Tiki? If only Tiki, is this coming from EasyPHP? If not then switch to it, it will be easier to get working.
After looking, indeed this problem is not related to the search/refresh.php bug that was fixed, but to something about sessions.


posts: 1

Hello,

havin same problem under xp , apache 2.0.48 mysql 4.0.18.
i tried everything until i discovered the solution:

the php.ini was NOT in the right location

my suggestion is have a look ath phpinfo(); where the php.ini is installed.

put the php.ini into the appropriate directory ( in my case into c:\windows !!!) and edit the session.save_path etc.

restart apache and up u go!!!

have a nice day !!!!