奇怪的PHP上传问题与非图像文件导致403 submisson错误为什么? - 图像文件确定

时间:2013-02-17 20:14:52

标签: php

得到了这种奇怪的情况:

我的php脚本正确上传图像文件并重命名,只要它们是指定的png / gif / jpeg文件。

BUT!当我上传非图像文件,例如。 .php或.html [用于测试/黑客]第一次上传被按预期被拒绝并且发出了我自己的构造错误 - 到目前为止一直很好但是接下来会发生以下情况:

1)我上传nxt / 2nd文件,如果下一个文件是允许的图像文件没有问题。 2)我上传下一个/第二个文件并且如果该第二个文件也是非允许的图像文件,即。两个不允许上传的脚本停止执行,并在浏览器中正确调用脚本/ url,并显示403 - submision error ???

  • 如果我进行浏览器刷新,则同样的403错误仍然存​​在。
  • 如果我点击进入网址并按回车键,则脚本将运行“新建”,其中所有以前的字段值都将被清空。

(我已经将上传到777的非图像文件的权限更改为enusre,这不是原因 - 但同样的错误仍然存​​在)

我该如何解决这个问题? - 这可能是我自己的代码的问题吗? - 或html / php内部工作的问题? - 这还有什么,任何身体都面临类似的问题?

谢谢。

---对于那些想要代码的人 - 只显示重要的位......

<form name="sellerscript" action="" method="POST" enctype="multipart/form-data">

<input type="file" name="upload3" id="f3" size="40" />
<input value="Image Upload/Adjust" name="imgupload" type="submit"> <br>

<input type="hidden" name="turn" value="<?php echo $round;?>" />
<input name="fn3h" type="hidden" value="<?php echo $fn3; ?>"  />
    <input name="uf3h" type="hidden" value="<?php echo $uf3; ?>"  />

--- php -

// ================上传文件VARS = [仅限foto / image 3使用===========

$ allowed = array('image / gif','image / png','image / jpeg','image / pjpeg');
        $ FNAME = $ fname2 = $ fname3 = '';         $ uploaded1 = $ uploaded2 = $ uploaded3 = $ auto_insertid = FALSE;

    $uid1=$uid2=$uid3='';       // id for uploads table

    $currentf1=$currentf2=$currentf3=''; //-- present loaded fname

// - 上传处理

if(!isset($ _ POST ['rmp3'])&amp;&amp; $ removep3h!='Yes')//不输入whn prev.file.beng remvd
{

//-- echo '<br>image 3 being uploaded:name+'.$_FILES['upload3']['name'].'<br>' ;

if(isset($ _ FILES ['upload3']))
{

if(($ _FILES ['upload3'] ['name']!=“”)||($ _FILES ['upload3'] ['name']!= NULL))&amp;&amp;($ _FILES ['upload3'] ['size']&lt; = 1524288)) {         $ UF3 = $ _ FILES [ 'upload3'] [ '名称']; //用户拥有上次上传文件的名称;

//--echo "<br> _________ file under 520k --upload permitted file---------";

///////////////////////////////

首先似乎正在工作,除了:当两个文件比png / gif / jpeg上传一个后续的文件时 - 403错误发生。

文件是: [root @ myhost桌面] #ls -l * .png -rwxrwxrwx 1 root root 27342 Oct 30 18:46 a1-banner5.png -rwxrwxrwx 1 root root 31812 11月11日23:31 a1-credit.png# -rwxrwxrwx 1 arif arif 1418 Oct 8 2011 2851auto.gif -rwxrwxrwx 1 root root 2321 Oct 8 2011 btf2.gif

-rwxrwxrwx 1 root root 46321 10月22日23:35 ez-calc.html

-rwxrwxrwx 1 root root 25958 10月25日23:58 dixonhome.html -rwxrwxrwx 1 root root 24883 10月26日00:01 dixons-home.html

注意:除了[a1-banner5.png]之外,所有图像文件都会在所有序列中上传而不会出现问题 - 如果在非图像上传之后将其作为第二个文件上传,则会产生同样的问题。 403错误。 其他正在yploaded的hrml文件会产生403错误。

文件从以下内容上传: drwxr-xr-x 26 root www-data 4096 Feb 13 20:38桌面 文件上传到: drwxrwxrw- 2 www-data www-data 4096 Feb 17 23:45上传 临时目录: drwxrwxrwx 47 root www-data 12288 Feb 18 00:25 tmp(尝试root作为grp - 同样错误)

错误:网址+ 403

www.testdomain / domainsite / sellerscript.php

403禁止 拒绝访问服务器上的此资​​源! 由LiteSpeed Web服务器提供支持 LiteSpeed Technologies不对本网站的管理和内容负责!


当脚本运行完美且仅上传图片时: 网址:

wwww.testdomain / domainsite / sellerscript.php

文件&gt; Photo-3 / btf2.gif已上传!

[注意:两个网址都相同!]

我希望这足以让某人发现问题。

谢谢。

1 个答案:

答案 0 :(得分:0)

好吧,如果您可以在目录中搜索您的读/写权限,请检查您的权限。