易截截图软件、单文件、免安装、纯绿色、仅160KB

LINUX下PHP对命名管道操作权限问题解决小记

这两天碰到一个小问题卡了我老半天……就是LINUX下PHP程序与其他程序通信。
我们需要实现用户在WEB页面上进行操作时可以启用我们在服务器端的后台程序(用C、C++编写)。
之前在windows下,已经使用命名管道实现(请见我之前的博文http://blog.csdn.net/rcfalcon/archive/2010/02/09/5303142.aspx),这次将服务器整体移往LINUX下。
服务器环境 CentOS 5 + apache + mysql + php
于是乎基本按照之前的代码框架,很快就在服务器端调通了。(但是我是使用的root用户直接运行的PHP脚本测试的)
但是后来测试通过WEB访问的时候,提示说拿不到命名管道的权限。
于是乎开始解决这个问题……
修改php.ini的open_basedir等设置,未果。
修改httpd.conf的若干设置,未果。
将命名管道chmod 777,未果。
将apache服务器用户组设成 root,未果。
再将命名管管道chown apache:root,未果。
尝试PHP读写普通文件,没问题。
翻PHP官方手册,未发现问题。
于是乎我开始抓狂了。
把百度、google都翻了10多页,也找不到正确答案。。。
最后开始翻国外的编程论坛,终于看到有个人跟我情况类似。但是他说他把httpd换了个目录然后restart service就行了,照着尝试,未果……
最后看到有人说可能是SELINUX的问题,我在崩溃之余怀着最后一丝希望把SELINUX禁了,然后重启。
首先是一切正常,
然后GNOME居然报了一堆错,不管了,继续
然后……
居然可以了!
万恶的SELINUX……
原来centos5、RHEL、FEDORA等自带的默认安装SELINUX,其在很大的程度上加强了整个LINUX系统的安全性。但是很多用户权限上受到限制,比如在我这个问题中,就是其把apache用户的命名管道读写权限给关闭了。
看来还是需要恶补 LINUX啊,太菜了~


相关文档:

linux下挂载硬盘光驱和U盘

mount   -t   iso9660   /dev/cdrom   /mnt/cdrom       挂光驱   
mount   -t   vfat   /dev/fd0   /mnt/floppy           挂软驱     (文件内型可以自己选)
mount -t vfat -o rw,utf8,umask=000 /dev/sda1 ......

编译linux内核生成的system.map文件详解

system.map内容格式为:线性地址 类型 符号
具体内容如下:
00100000 A phys_startup_32
c0100000 T startup_32
c0100000 A _text                             注:表 ......

●嵌入式linux入门首选,项目实战体验!

你是否想进入嵌入式高薪领域,却感觉无从下手?
你是否在看书、查资料、论坛提问中缓慢而吃力的前行?
时间便是成本!学习的路上,我们更需要专家系统的指引,这样会事半功倍!
华清远见—嵌入式Linux入门实战免费体验日,一天的时间,解决您的烦恼,绝对超值的回报!
优势/特色:
● 内容,传授最系统,最实用的 ......

Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf

Linux 运行的时候,是如何管理共享库(*.so)的?在 Linux 下面,共享库的寻找和加载是由 /lib/ld.so 实现的。 ld.so 在标准路经(/lib, /usr/lib) 中寻找应用程序用到的共享库。
但是,如果需要用到的共享库在非标准路经,ld.so 怎么找到它呢?
目前,Linux 通用的做法是将非标准路经加入 /etc/ld.so.conf,然后运行 ldconf ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号