php+sqlite3给sqlite3的数据库所在目录777权限是否合适?
ringa_lee
ringa_lee 2017-04-10 14:27:46
[PHP讨论组]

如题,使用php与sqlite3建一个小型应用,使用nginx作为反向代理服务器,spawn-fcgi作为FCGI服务,数据库和php及静态文件不在同一个目录下。
现在Nginx和spawn-fcgi都使用Nobody用户工作,如果数据库目录不能读/写的话php会提示can not open the database……(大概是这样的错误),所以必须把数据库目录的权限设为777,问题是这样做真的没问题么?
网上查到的方法都是把权限改成777,但是我看我的rails应用里面的db目录的权限是775,数据库文件的权限就更严苛了,好像是664……网上查了一下rails的passenger(我使用passenger部署的)是以应用路径的所有者为用户工作的,那是不是我也应该使用php应用文件的创建者来执行fcgi服务?
假如这样不安全的话能提出不安全的原因就更好了。

ringa_lee
ringa_lee

ringa_lee

全部回复(1)
PHPz

把 sqlite 的数据库文件设置成 Nobody 所有即可。权限为 644 甚至 600 就行。

# chown Nobody:Nobody xxx.sqlite
# chmod 600 xxx.sqlite
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号