也问关于使用session_start()出错何缘故?

日总是我哥 2003-09-29 01:25:30
在添加程序映射以php.exe用为解析器时,可以正常运行。
但以php4isapi.dll作为解析器时,出现如下错误:
Warning: session_start(): open(/tmp\sess_e54190268bc80355152959a5686fb008, O_RDWR) failed: No such file or directory (2) in E:\Webpage\Forum\index.php on line 8

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at E:\Webpage\Forum\index.php:8) in E:\Webpage\Forum\index.php on line 8

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at E:\Webpage\Forum\index.php:8) in E:\Webpage\Forum\index.php on line 8

Fatal error: Call to undefined function: mssql_pconnect() in E:\Webpage\Forum\config\dbconn.php on line 13

Warning: Unknown(): open(/tmp\sess_e54190268bc80355152959a5686fb008, O_RDWR) failed: No such file or directory (2) 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 (/tmp) in Unknown on line 0

查了CSDN以前的贴子,也查了外国的相关网站,但还是没有找到答案。

以前的贴子的解答要么是说session_start前面不能有输出,
要么是建立一目录(或tmp或temp),

但是发现,无论怎么修改session.save_path = c:\temp的值,其错误信息均为
Warning: Unknown(): open(/tmp
(注意:这里的/tmp一直为变)


何故?
...全文
178 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnpr 2003-10-03
  • 打赏
  • 举报
回复
http://www.eaoo.com/design/list.asp?classid=2&Nclassid=9
bryantan 2003-10-03
  • 打赏
  • 举报
回复
此问题源于你设置的SESSION保存目录不存在或不能写,你用IIS并且是ISAPI的方式必须在修改完PHP。INI后重新启动IIS。
boystones 2003-09-30
  • 打赏
  • 举报
回复
这个问题容易解决,你是在什么状态下预览的,你在要用ie 来预览才行,怎么说呢,在地址栏输入
localhost\.......后面是你的apache路径,要这样才行,根本就不用设什么php.ini.
日总是我哥 2003-09-30
  • 打赏
  • 举报
回复
这是phpinfo结果:

PHP Version 4.3.2

System Windows NT COOLSLOB 5.0 build 2195
Build Date May 28 2003 15:06:05
Server API CGI/FastCGI
Virtual Directory Support enabled
Configuration File (php.ini) Path C:\WINNT\php.ini
PHP API 20020918
PHP Extension 20020429
Zend Extension 20021010
Debug Build no
Thread Safety enabled
Registered PHP Streams php, http, ftp, compress.zlib
qing205 2003-09-30
  • 打赏
  • 举报
回复
可笑啊!因为配置问题而要重新选择语言,我想就凭这点你能学好吗?
seamusonline 2003-09-30
  • 打赏
  • 举报
回复
这个问题我遇到过,是php.ini文件指向的问题

当PHP以Apache的模块运行的时候php.ini是指向C:\winnt\php.ini
如果该文件不存在就使用PHP的系统默认,也就是"/tmp"

解决方法是:
讲PHP目录里面的php.ini拷贝到c:\winnt\下面,然后修改

session.save_path c:\winnt\temp

我觉得PHP功能很强大,如果你连环境都没有搞定就是说PHP不好,不去用它,太草率了吧
babystudio 2003-09-30
  • 打赏
  • 举报
回复
你的php.ini中的许多路径设置是不是使用了相对路径?
比如
session参数事 ./tmp
扩展库函数类似 ./extensions/***.dll

在使用模块方式时,把他们改成绝对路径试试看
liushui05 2003-09-30
  • 打赏
  • 举报
回复
老土的问题了,检查一下php.ini里的session_save_path上面默认的是/tmp,你将它改一下就可以了。如果你是再windows下的,如果想再你设置在c:/tmp下,那么你就在C盘下建立一个tmp目录就可以了的。
aceblues 2003-09-29
  • 打赏
  • 举报
回复
你可用phpinfo()测试一下看一下里面的配置可能哪个地方不正确,session.save_path,自动会设好的,
日总是我哥 2003-09-29
  • 打赏
  • 举报
回复
呵~~~

楼上,不行的~~

Fatal error: Call to undefined function: mssql_pconnect() in E:\Webpage\Forum\config\dbconn.php on line 13
这个错,在使用php.exe作为解析时就不会有了~~~~~~~```

session.save_path 已经设为c:\winnt\temp
feel8 2003-09-29
  • 打赏
  • 举报
回复
设置php.ini 中 session.save_path = c:\winnt\temp 重启web服务器,
header函数前不能有输出,空格也不行。
php.ini 中 ;extension=php_mssql.dll前的分号去掉,重启web服务器
日总是我哥 2003-09-29
  • 打赏
  • 举报
回复
刚刚安装了apache,配置成功了,

当用IIS时,使用php.exe 作为解析器时也成功了
就是使用php4isapi.dll作为解析器时,出现错误!
日总是我哥 2003-09-29
  • 打赏
  • 举报
回复
要命~~~ 忘了说明,我用的是IIS~~~
myblessu 2003-09-29
  • 打赏
  • 举报
回复
修改php.ini中的session.save_path = c:\temp后,在c盘下建temp文件夹,然后重启apache.
jueban9818 2003-09-29
  • 打赏
  • 举报
回复

windows 下
c:\建立一个tmp文件价不就可以了吗?
tmp可读写!
hxhlc 2003-09-29
  • 打赏
  • 举报
回复
我碰到这个问题的时候 ,就是这么解决的了 ?
lang11zi 2003-09-29
  • 打赏
  • 举报
回复
php.ini很烦,我到现在都没配出来

我已经选择jsp了
sdliubo 2003-09-29
  • 打赏
  • 举报
回复
php.ini文件配置的有没有问题啊

你那个目录的权限设置的正确吗?
sharkshi 2003-09-29
  • 打赏
  • 举报
回复
以你安装的apache 的系统要目录下建一个tmp目录

原因是你存放session的值的目录未建好,在php.ini中有设置的,你找下就明白了
sdliubo 2003-09-29
  • 打赏
  • 举报
回复
php.ini文件配置的有没有问题啊

你那个目录的权限设置的正确吗?
加载更多回复(1)

21,882

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧