免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1847 | 回复: 5
打印 上一主题 下一主题

关于使用exec()函数的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-02-14 18:14 |只看该作者 |倒序浏览
我想用exec函数来执行shell发送邮件,邮件的临时文件存放于/tmp下
执行以下代码,却不能成功

$execstr="cat ".$tmpfilename." | /usr/lib/sendmail ".$mailto;
  exec($execstr);

httpd的errorlog报错如下
cat:dmSr3iu : Permission denied

很显然是系统用户apache的权限问题

请问如何解决

论坛徽章:
0
2 [报告]
发表于 2006-02-14 18:47 |只看该作者
先 sudo

论坛徽章:
0
3 [报告]
发表于 2006-02-14 21:01 |只看该作者
这样的话,是不是要设定 NOPASSWD:apache?
这样不会造成安全上的问题吗?
请指教

论坛徽章:
0
4 [报告]
发表于 2006-02-14 21:08 |只看该作者
会造成安全上的问题

如果你想定时发信。可以把信件放在apache可以阅读的文件夹。然后用定时执行脚本阅读信件并发出。尽量不要用exec()和system() ,最好在服务器上禁止了这两个函数,否则网站被入侵之后会遭到毁灭性的打击

论坛徽章:
0
5 [报告]
发表于 2006-02-14 21:21 |只看该作者
谢谢
我并不是想定时发信,只是想用web来实现发信的功能
一般大家都用mail()函数来实现,但是我却不知为什么发不了,所以才会想到用exec函数;
关于我的mail函数的问题,我在另外的一个帖子里发了求问了,但是还没有人帮我解答;
因为我的服务器没有公网ip,我想会不会是这个问题啊,但是我用root用户可以用mail命令发送邮件,真是想不通

论坛徽章:
0
6 [报告]
发表于 2006-02-14 21:26 |只看该作者
这个问题我也遇见过。后来重新装了服务器才好的#_*当时真的很菜。。。

如果你使用的是win操作系统,推荐使用 www.wapm.cn 的运行环境,这个发信没问题的。如果你是linux系统的话。你可以用smtp类发信。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP