基因组信息挖掘分享 http://blog.sciencenet.cn/u/hsm 基因组像无标点的天书,需要慢慢理解,慢慢加标点。

博文

[转载]perl的CGI编程时不能写文件的问题

已有 1661 次阅读 2022-7-5 17:27 |个人分类:计算机学习|系统分类:科研笔记|文章来源:转载

【问题标题】:move_uploaded_file 给出“无法打开流:权限被拒绝”错误(move_uploaded_file gives "failed to open stream: Permission denied" error)

【问题描述】:

在 CentOS 上尝试使用 Apache 2.2 和 PHP 5.3 配置上传目录时,我不断收到此错误。

在 php.ini 中:

upload_tmp_dir = /var/www/html/mysite/tmp_file_upload/

在 httpd.conf 中:

<Directory /var/www/html/mysite/tmp_file_upload/>    
    Options  -Indexes    
    AllowOverride None    
    Order allow,deny    
    Allow from all
 </Directory>
 <Directory /var/www/html/mysite/images/>                
    Options -Indexes
  </Directory>

CentOS 目录权限:

drwxrwxr-x 2 root root 4096 Nov 11 10:01 imagesdrwxr-xr-x 2 root root 4096 Nov 12 04:54 tmp_file_upload

无论我做什么,当我上传文件时,我总是从 PHP 收到这个错误:

警告:move_uploaded_file(images/robot.jpg):无法打开流:第 78 行 /var/www/html/mysite/process.php 中的权限被拒绝

警告:move_uploaded_file(): Unable to move '/tmp/phpsKD2Qm' to 'images/robot.jpg' in /var/www/html/mysite/process.php on line 78

【解决方案1】:

我已经尝试了上面所有的解决方案,但是以下解决了我的问题

chcon -R -t httpd_sys_rw_content_t your_file_directory

【问题讨论】:

    【解决方案2】:

    如果启用了SELinux,就会发生这种情况。通过设置SELINUX=disabled 在/etc/selinux/config 中禁用它并重新启动服务器。

    【问题讨论】:

      【解决方案3】:

      这对我有用。

      textpop-up
      sudo adduser <username> www-datasudo chown -R www-data:www-data /var/wwwsudo chmod -R g+rwX /var/www

      然后注销或重新启动。

      原文:https://www.likecs.com/ask-2413205.html



      https://blog.sciencenet.cn/blog-442719-1345986.html

      上一篇:如何让notepad不自动加扩展名
      收藏 IP: 171.113.49.*| 热度|

      0

      该博文允许注册用户评论 请点击登录 评论 (0 个评论)

      数据加载中...
      扫一扫,分享此博文

      全部作者的精选博文

      Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

      GMT+8, 2024-12-2 17:50

      Powered by ScienceNet.cn

      Copyright © 2007- 中国科学报社

      返回顶部