请教一下共享内存的问题
新装的一个Linux系统,并初步配了一下apache
但是程序运行出错,具体情况为:
----------------------
shmid = shmget(shmkey,shmsize,0777|IPC_CREAT|IPC_EXCL);
返回-1.错误类型是:Permission denied
shmid = shmget(shmkey,shmsize,0777);
也是返回-1,错误类型是:No such file or directory
----------------------
这个情况是在apache调用运行cgi的时候出现,当我单独写一个main函数,只使用这个函数的时候能够顺利申请到共享内存.
是否是因为我的apache配置有问题?还是其他原因?请各位帮忙,谢谢了!
------解决方案--------------------你直接运行cgi脚本如何?看你说的好像能运行正确。
我觉得是权限问题,apache缺省不能用root用户运行,你需要重新编译源码才能以root用户运行
你可以用apache运行的用户(有的系统是apache,有的是wwwrun),直接运行脚本看能否通过,如果不行,那就确认是用户权限问题来了。