linux文件上传,给文件或目录添加apache权限的方法
在LAMP环境中,测试一个简单的php文件上传功能时,发现/var/log/apache2/error.log中出现如下php警告:
1. [Tue Jan 31 09:40:27 2012] [error] [client 127.0.0.1] PHP Warning: move_uploaded_file(/home/leotody/32883679.jpeg): failed to open stream: Permission denied in /var/www/upload_file.php on line 25, referer: http://localhost/info.html
2. [Tue Jan 31 09:40:27 2012] [error] [client 127.0.0.1] PHP Warning: move_uploaded_file(): Unable to move '/tmp/phps05ssU' to '/home/leotody/32883679.jpeg' in /var/www/upload_file.php on line 25, referer: http://localhost/info.html
提示没有访问权限,文件上传的代码如下:
if (file_exists("upload/" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " already exists. "; } else { if(move_uploaded_file($_FILES["file"]["tmp_name"], "upload/".$_FILES["file"]["name"])) { echo "Stored in: " . "upload/" . $_FILES["file"]["name"]; } else { echo "move error!"; } }
页面中显示"move error!",说明move_uploaded_file()函数执行失败。
通过查找资料,发现网上有说是selinux启动的原因,检查系统并未启动selinux,查看upload目录默认权限ls -ld upload,结果为755:
1. drwxr-xr-x 2 root root 4096 2012-01-31 10:59 upload
将upload目录权限改为777,sudo chmod 777 upload,再测试上传功能成功。但这种修改权限的方法并不安全。
故可以改upload目录的拥有者为www-data(即apache),sudo chown -R www-data:www-data upload,然后再测试上传功能成功。
1. drwxr-xr-x 2 www-data www-data 4096 2012-01-31 10:59 upload
以上这篇linux文件上传,给文件或目录添加apache权限的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Linux 文件和目录权限详细介绍
Linux文件和目录权限解读 如何设置Linxu文件和目录的权限 字符表示法 1)ls -l:查看所在目录所有文件的权限 2)chmod u=r file:把file文件的当前(用户user)的权限赋值为可写模式 3)chmod g=wrx file:把file文件的当前(组gruop)的权限赋值为可写,可读,可执行模式 4)chmod g-x file:把file文件的当前(组group)的权限减去可执行模式 5)chmod o+w file:把file文件的当前(所有人other)的权限
-
Linux中文件权限目录权限的意义及权限对文件目录的意义
linux中目录与文件权限的意义 一.文件权限的意义 r:可以读这个文件的具体内容: w:可以编辑这个文件的内容,包括增加删除文件的具体内容: x:文件就具有了可执行的权限-------注意:这里和window不一样,在win中,文件的可执行权限是通过扩展名表现出来的,如exe.bat等,但是在linux中文件的可执行权限是通过这个x决定的,与文件名没有什么关系. 二.目录权限的意义 r:可以查看此目录下的完整文件列表信息. w:可以对此目录下的所有的文件及目录进行相关的更改,也就是可以更改这个
-
简析Linux中如何改变文件或目录的访问权限
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作.可执行权限表示允许将该文件作为一个程序执行.文件被创建时,文件所有者自动拥有对该文件的读.写和可执行权限,以便于对文件的阅读和修改.用户也可根据需要把访问权限设置为需要的任何组合. 有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户.其他用户.所有者一般是文件的
-
linux文件目录默认权限(详解)
1.文件的默认权限是没有x的,即文件的最大默认权限为666(-rw-rw-rw) 2.由于进入目录和目录的x权限有关,故目录的最大默认权限为777(drwxrwxrwx) 查看默认权限需要使用umask命令: [123@123 ~]$ umask //数字方式显示 0022 [123@123 ~]$ umask -S //符号方式显示 u=rwx,g=rx,o=rx以数字范式显示有4个数字,只看后3个即可,第一个为特殊权限使用 [123@123 ~]$ touc
-
Linux文件权限与目录管理详解
一.Linux文件系统的三种身份 1).文件所有者 2).同组用户 同一个用户组的用户可以访问该用户组的文件: 每个账号可以加入多个用户组. 在同一个用户组的文件也可以设置不同的权限,可以不让本组用户查看. 3).其他人 除了文件主.同组用户以外的人就是其他人. PS: /etc/passwd 记录所有用户的账号 /etc/shadow 记录所有用户的密码 /etc/group 记录所有的组名 二.文件属性 ls -al 显示所有的文件名和相关属性(包括以.开头的隐藏文件) total 72 d
-
Linux 下目录文件权限(命令)的查看和修改
Linux 下目录文件权限的查看和修改 在我的服务器下面有这几个文件夹 同时用ls -l也可以查看到这几个文件的权限. 看其中的assets文件一共有十位数,其中: 最前面那个 - 代表的是类型 中间那三个 rwx 代表的是所有者(user)拥有的权限 然后那三个 rwx 代表的是组群(group)拥有的权限 最后那三个 rwx 代表的是其他人(other)拥有的权限 r 表示文件可以被读(read) w 表示文件可以被写(write) x 表示文件可以被执行(如果它是程序的话) -表示相应的权
-
linux修改目录和文件权限的简单命令解释
今天遇到的问题,如何一个用户如www的权限复制给我的用户? 目录的权限表示:dwrxr--r-- 其中第一个字符 d代表目录, -代表字符 w代表可写,r代表可读 x代表可执行 数字为4,2,1其中第一组是文件或者目录所有者权限,第二组代表当前用户所在用户组,第三组是其他用户组的权限所以控制文件的权限是精确到组的 用 chmod 权限 目录 复制代码 代码如下: chmod 777 testchmod u+w test
-
详解Linux系统中设置SFTP服务用户目录权限的方法
前言 在工作或者学习的时候,我们常常会遇到这样的需求,限制一个Linux用户,让他只能在指定的目录下进行添加.修改.删除操作,并且只能使用sftp登录服务器,不能用ssh操作.这些可以通过配置sftp服务实现. 方法如下 提供sftp服务的有vsftpd和internal-sftp,这里用的是系统自带的internal-sftp,操作步骤如下: 1.创建新用户ui,禁止ssh登录,不创建家目录 useradd -s /sbin/nologin -M www 2.设置用户密码 passwd www
-
linux下建站目录分配权限的经验技巧总结
前言 在网上搜索网站文件夹权限配置一般都是是: 文件夹权限最小权限755 文件最小权限644 文件的可读可写可执行很容易理解,但文件夹的权限就需要好好梳理梳理啦,下面是自己的一些经验分享给大家,需要的一起来看看详细的介绍: 前期工作 先创建一个文件夹 test mkdir test 在该目录下创建一个1.txt文件并写入111 cat > 1.txt 111 现在退出该目录来一个一个分析改目录权限 不要用root用户来创建文件夹,因为文件权限配置对root用户无效 目录的可执行权限 chmod
-
linux文件上传,给文件或目录添加apache权限的方法
在LAMP环境中,测试一个简单的php文件上传功能时,发现/var/log/apache2/error.log中出现如下php警告: 1. [Tue Jan 31 09:40:27 2012] [error] [client 127.0.0.1] PHP Warning: move_uploaded_file(/home/leotody/32883679.jpeg): failed to open stream: Permission denied in /var/www/upload_file
-
linux下上传下载文件夹的方法
Linux下目录复制:本机->远程服务器 scp -r /home/shaoxiaohu/test1 zhidao@192.168.0.1:/home/test2 test1为源目录,test2为目标目录,zhidao@192.168.0.1为远程服务器的用户名和ip地址. Linux下目录复制:远程服务器->本机 scp -r zhidao@192.168.0.1:/home/test2 /home/shaoxiaohu/test1 zhidao@192.168.0.1为远程服务器的用户名和
-
Django中文件上传和文件访问微项目的方法
Django中上传文件方式. 如何实现文件上传功能? 1创建项目uploadfile: 创建app:front 项目设置INSTALLED_APPS中添加'front' INSTALLED_APPS = [ ''' 'front' ] #后面添加MEDIA_ROOT和MEDIA_URL STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR,'static') MEDIA_ROOT = os.path.join(BASE_DIR,'
-
Java实现文件上传到服务器本地并通过url访问的方法步骤
目录 一.场景 二.SpringBoot默认静态资源访问方式 三.上传的文件应该存储在哪?怎么访问? 1.文件存储在哪? 2.怎么访问? 四.测试 五.总结 一.场景 Java实现文件上传到服务器本地,并通过url访问 有个需求,前端上传文件,需要用开关的方式同时支持上传七牛和服务器本地,方便不同的用户需求合理分配资源.本篇主要介绍文件上传到本地,然后通过url访问. 二.SpringBoot默认静态资源访问方式 首先想到的就是可以通过SpringBoot通常访问静态资源的方式,当访问:项目根路
-
SWFUpload多文件上传及文件个数限制的方法
本文实例讲述了SWFUpload多文件上传及文件个数限制的方法.分享给大家供大家参考,具体如下: SWFUpload是一个基于flash与JavaScript的客户端文件上传组件. handlers.js文件 完成文件入列队(fileQueued) → 完成选择文件(fileDialogComplete) → 开始上传文件(uploadStart) → 上传处理(uploadProgress) → 上传成功(uploadSuccess) → 上传完成(uploadComplete) → 列队完
-
layui文件上传控件带更改后数据传值的方法
1,文件上传控件开启 2,before内添加方法,以json格式存储数据.数据以对象形式存在,切对象格式不能直接传到后台,所以转化为json格式再进行传送. 3,后台String接收param参数,转为json,直接通过get方法取值保存 后台代码: 以上这篇layui文件上传控件带更改后数据传值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
基于SecureCRT向远程Linux主机上传下载文件步骤图解
有时候直接在Linux服务器上通过 wget 或 curl 工具下截比较大的网络文件时会比较慢,这时我们通常会改用在Windows平台通过迅雷等更加现代化的下载功具下好目标文件(迅雷开会员才能更高速的恶心操作是题外话哈,话说我也送了不少钱给迅雷~~~),这时就面临要把Windows平台下的文件传送到远程Linux服务器上的问题了. 把Windows平台下的文件传送到远程Linux服务器上的方法有很多,这里简单记录下在当前流行的Linux远程管理工具SecureCRT下如何操作及注意事项! 先使用
-
asp.net下文件上传和文件删除的代码
文件上传 HttpPostedFile postFile = Request.Files["imgFile"]; if(postFile.FileName!=String.Empty){ ex=postFile.FileName.Substring(postFile.FileName.LastIndexOf(".")); fileName= DateTime.Now.ToString("yyyyMMdd") + ex;
-
Jsp+Servlet实现文件上传下载 文件上传(一)
文件上传和下载功能是Java Web必备技能,很实用. 本文使用的是Apache下的著名的文件上传组件 org.apache.commons.fileupload 实现 下面结合最近看到的一些资料以及自己的尝试,先写第一篇文件上传.后续会逐步实现下载,展示文件列表,上传信息持久化等. 废话少说,直接上代码 第一步,引用jar包,设置上传目录 commons-fileupload-1.3.1.jar commons-io-2.4.jar 上传目录:WEB-INF/tempFiles和WEB-INF
-
SpringMVC文件上传 多文件上传实例
必须明确告诉DispatcherServlet如何处理MultipartRequest.SpringMVC中提供了文件上传使用方式如下配置xxx-servlet.xml,添加如下代码: 复制代码 代码如下: <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- 设置
随机推荐
- SQL2005 学习笔记 窗口函数(OVER)
- jQuery 过滤方法filter()选择具有特殊属性的元素
- js时间戳格式化成日期格式的多种方法
- Angular1.x自定义指令实例详解
- swift MD5加密源码的实例详解
- php框架Phpbean说明
- Python MD5加密实例详解
- 学习GO编程必备知识汇总
- SQL Server数据库中批量导入数据的四种方法总结
- js中实现字符串和数组的相互转化详解
- Android自定义View仿微信LetterView效果
- js如何判断是否在iframe中及防止网页被别站用iframe嵌套
- Node.js配合node-http-proxy解决本地开发ajax跨域问题
- 用VBS记录客户机操作的代码
- 深入理解Node.js中通用基础设计模式
- 用javascript实现无刷新更新数据的详细步骤 asp
- Javascript基础教程之switch语句
- C++ 中友元函数与友元类详解
- C# SendMail发送邮件功能实现
- 我的论坛源代码(五)