0

嗨,我有一个 WAMP 服务器,其中一些文件上传到特定路径。

C:\wamp\www\上传\

在这种情况下。但是是否可以将这些文件上传到例如

D:\文档\用户\上传?

Upload.php指定存储文件的路径,但我没有更改到另一个路径的方法。

在此先感谢,凯瑟琳

编辑:upload.php

这是upload_file.php

<?php
$target_path  = "c:\\";

$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
 echo "El fichero ".  basename( $_FILES['uploadedfile']['name'])." ha sido enviado";
} else{
 echo "Hubo un error, inténtalo de nuevo!";
}
?>
4

1 回答 1

1

凯瑟琳,

在 WAMP 中,已设置 Apache(出于安全原因应该如此),因此 Apache 将不允许访问 C:\ 的根文件夹

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    **Deny from all**
</Directory>

这可以阻止成功侵入您网站的黑客被允许造成真正严重的损害。

所以我希望在您的 Apache 错误日志或您的 Php 错误日志中看到一条错误消息。除非您禁用了该功能,否则我还希望在 XDEBUG 的屏幕上看到和错误。也许您应该重新启用它,因为这些错误消息在您开发时非常有用!!!

更改 php.ini display_errors = On

现在可以像这样在正常网站文件夹结构之外打开特定文件夹

This is an excerpt from the httpd.ini without all the comments
<Directory "d:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all
#   onlineoffline tag - don't remove
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1

    </Directory>
    Alias /my_other_upload_folder_alias "c:/some_other/folder/my_other_upload_folder"
    <Directory "c:/some_other/folder/my_other_upload_folder">
        AllowOverride All
        Order Deny,Allow
        Deny from All
        Allow from 127.0.0.1
    </Directory>
</Directory>

然后,您使用 'my_other_upload_folder_alias' 作为 php 代码中的文件夹名称。

PS。您看起来像是将您的网站放入 c:\wamp\www 这是一个坏主意!像这样为您的网站创建子文件夹

c:\wamp\www\site1  
c:\wamp\www\site2

并考虑为每个站点创建一个虚拟主机。

于 2013-04-29T11:10:20.380 回答