2017-06-14 21 views
0

所以我到目前为止做了大量的研究,甚至没有发现可能导致这种情况的暗示。我在标签中加入了htaccess,因为我认为这在技术上可以做到。一个单独的文件夹神秘不是从ftp服务器上下载或压缩的

问题是这样的:我有一个服务器进行迁移。所以我想从旧服务器下载所有文件,然后重新上传到新服务器。 当我去到在线文件管理器并点击压缩和下载时,会发生什么情况,zip文件中缺少一个非常重要的文件夹(并根据计数来判断是否有其他文件丢失)。

我也使用Filezilla递归下载整个目录结构,但它也错过了该文件夹。更奇怪的是,Filezilla 看到该文件夹,我可以直接下载,但如果我递归下载文件夹就在它上面,它不抓住它。这与在线文件管理器一样,它也能看到它。

我甚至写了我自己的c#程序来做一个基本的目录列表,它没有看到它。它使用FtpWebRequest并将方法设置为WebRequestMethods.Ftp.ListDirectoryDe​​tails。

所以这个问题在服务器端的功能以及客户端通过FTP协议的尝试都依然存在。

有一个特定于该文件夹的.htaccess文件,但我看不到任何可能会这样做的文件。 (以下包含)

有没有人有任何想法?我会非常感谢任何提示

<IfModule mod_headers.c> 
    <FilesMatch "\.(js|css|xml|gz|svgz)$"> 
    Header append Vary Accept-Encoding 
    </FilesMatch> 
</IfModule> 

    <FilesMatch "\.(htm|php|js|css|htc|png|gif|jpe?g|ico|xml|csv|txt|swf|flv|eot|woff|svg|svgz|ttf|pdf|gz)$"> 
    RewriteEngine Off 
    </FilesMatch> 

    # Apache configuration file 
# httpd.apache.org/docs/2.2/mod/quickreference.html 

# Note .htaccess files are an overhead, this logic should be in your Apache 
# config if possible: httpd.apache.org/docs/2.2/howto/htaccess.html 

# Techniques in here adapted from all over, including: 
# Kroc Camen: camendesign.com/.htaccess 
# perishablepress.com/press/2006/01/10/stupid-htaccess-tricks/ 
# Sample .htaccess file of CMS MODx: modxcms.com 


# ---------------------------------------------------------------------- 
# Better website experience for IE users 
# ---------------------------------------------------------------------- 

# Force the latest IE version, in various cases when it may fall back to IE7 mode 
# github.com/rails/rails/commit/123eb25#commitcomment-118920 
# Use ChromeFrame if it's installed for a better experience for the poor IE folk 

<IfModule mod_headers.c> 
    Header set X-UA-Compatible "IE=Edge,chrome=1" 
    # mod_headers can't match by content-type, but we don't want to send this header on *everything*... 
    <FilesMatch "\.(js|css|gif|png|jpe?g|pdf|xml|oga|ogg|m4a|ogv|mp4|m4v|webm|svg|svgz|eot|ttf|otf|woff|ico|webp|appcache|manifest|htc|crx|oex|xpi|safariextz|vcf)$" > 
    Header unset X-UA-Compatible 
    </FilesMatch> 
</IfModule> 


# ---------------------------------------------------------------------- 
# Cross-domain AJAX requests 
# ---------------------------------------------------------------------- 

# Serve cross-domain Ajax requests, disabled by default. 
# enable-cors.org 
# code.google.com/p/html5security/wiki/CrossOriginRequestSecurity 

# <IfModule mod_headers.c> 
# Header set Access-Control-Allow-Origin "*" 
# </IfModule> 


# ---------------------------------------------------------------------- 
# CORS-enabled images (@crossorigin) 
# ---------------------------------------------------------------------- 

# Send CORS headers if browsers request them; enabled by default for images. 
# developer.mozilla.org/en/CORS_Enabled_Image 
# blog.chromium.org/2011/07/using-cross-domain-images-in-webgl-and.html 
# hacks.mozilla.org/2011/11/using-cors-to-load-webgl-textures-from-cross-domain-images/ 
# wiki.mozilla.org/Security/Reviews/crossoriginAttribute 

<IfModule mod_setenvif.c> 
    <IfModule mod_headers.c> 
    # mod_headers, y u no match by Content-Type?! 
    <FilesMatch "\.(gif|png|jpe?g|svg|svgz|ico|webp)$"> 
     SetEnvIf Origin ":" IS_CORS 
     Header set Access-Control-Allow-Origin "*" env=IS_CORS 
    </FilesMatch> 
    </IfModule> 
</IfModule> 


# ---------------------------------------------------------------------- 
# Webfont access 
# ---------------------------------------------------------------------- 

# Allow access from all domains for webfonts. 
# Alternatively you could only whitelist your 
# subdomains like "subdomain.example.com". 

<IfModule mod_headers.c> 
    <FilesMatch "\.(ttf|ttc|otf|eot|woff|font.css)$"> 
    Header set Access-Control-Allow-Origin "*" 
    </FilesMatch> 
</IfModule> 


# ---------------------------------------------------------------------- 
# Proper MIME type for all files 
# ---------------------------------------------------------------------- 

# JavaScript 
# Normalize to standard type (it's sniffed in IE anyways) 
# tools.ietf.org/html/rfc4329#section-7.2 
AddType application/javascript js jsonp 
AddType application/json json 

# Audio 
AddType audio/ogg oga ogg 
AddType audio/mp4 m4a f4a f4b 

# Video 
AddType video/ogg ogv 
AddType video/mp4 mp4 m4v f4v f4p 
AddType video/webm webm 
AddType video/x-flv flv 

# SVG 
# Required for svg webfonts on iPad 
# twitter.com/FontSquirrel/status/14855840545 
AddType image/svg+xml svg svgz 
AddEncoding gzip svgz 

# Webfonts 
AddType application/vnd.ms-fontobject eot 
AddType application/x-font-ttf ttf ttc 
AddType font/opentype otf 
AddType application/x-font-woff woff 

# Assorted types 
AddType image/x-icon ico 
AddType image/webp webp 
AddType text/cache-manifest appcache manifest 
AddType text/x-component htc 
AddType application/xml rss atom xml rdf 
AddType application/x-chrome-extension crx 
AddType application/x-opera-extension oex 
AddType application/x-xpinstall xpi 
AddType application/octet-stream safariextz 
AddType application/x-web-app-manifest+json webapp 
AddType text/x-vcard vcf 
AddType application/x-shockwave-flash swf 
AddType text/vtt vtt 


# ---------------------------------------------------------------------- 
# Allow concatenation from within specific js and css files 
# ---------------------------------------------------------------------- 

# e.g. Inside of script.combined.js you could have 
# <!--#include file="libs/jquery-1.5.0.min.js" --> 
# <!--#include file="plugins/jquery.idletimer.js" --> 
# and they would be included into this single file. 

# This is not in use in the boilerplate as it stands. You may 
# choose to use this technique if you do not have a build process. 

#<FilesMatch "\.combined\.js$"> 
# Options +Includes 
# AddOutputFilterByType INCLUDES application/javascript application/json 
# SetOutputFilter INCLUDES 
#</FilesMatch> 

#<FilesMatch "\.combined\.css$"> 
# Options +Includes 
# AddOutputFilterByType INCLUDES text/css 
# SetOutputFilter INCLUDES 
#</FilesMatch> 


# ---------------------------------------------------------------------- 
# Gzip compression 
# ---------------------------------------------------------------------- 

<IfModule mod_deflate.c> 

    # Force deflate for mangled headers developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping/ 
    <IfModule mod_setenvif.c> 
    <IfModule mod_headers.c> 
     SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding 
     RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding 
    </IfModule> 
    </IfModule> 

    # HTML, TXT, CSS, JavaScript, JSON, XML, HTC: 
    <IfModule filter_module> 
    FilterDeclare COMPRESS 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $text/html 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $text/css 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $text/plain 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $text/xml 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $text/x-component 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $application/javascript 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $application/json 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xml 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xhtml+xml 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $application/rss+xml 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $application/atom+xml 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $application/vnd.ms-fontobject 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $image/svg+xml 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $image/x-icon 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $application/x-font-ttf 
    FilterProvider COMPRESS DEFLATE resp=Content-Type $font/opentype 
    FilterChain COMPRESS 
    FilterProtocol COMPRESS DEFLATE change=yes;byteranges=no 
    </IfModule> 

    <IfModule !mod_filter.c> 
    # Legacy versions of Apache 
    AddOutputFilterByType DEFLATE text/html text/plain text/css application/json 
    AddOutputFilterByType DEFLATE application/javascript 
    AddOutputFilterByType DEFLATE text/xml application/xml text/x-component 
    AddOutputFilterByType DEFLATE application/xhtml+xml application/rss+xml application/atom+xml 
    AddOutputFilterByType DEFLATE image/x-icon image/svg+xml application/vnd.ms-fontobject application/x-font-ttf font/opentype 
    </IfModule> 

</IfModule> 


# ---------------------------------------------------------------------- 
# Expires headers (for better cache control) 
# ---------------------------------------------------------------------- 

# These are pretty far-future expires headers. 
# They assume you control versioning with filename-based cache busting 
# Additionally, consider that outdated proxies may miscache 
# www.stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring/ 

# If you don't use filenames to version, lower the CSS and JS to something like 
# "access plus 1 week". 

<IfModule mod_expires.c> 
    ExpiresActive on 

# Perhaps better to whitelist expires rules? Perhaps. 
    ExpiresDefault "access plus 1 month" 

# cache.appcache needs re-requests in FF 3.6 (thanks Remy ~Introducing HTML5) 
    ExpiresByType text/cache-manifest "access plus 0 seconds" 

# Your document html 
    ExpiresByType text/html "access plus 0 seconds" 

# Data 
    ExpiresByType text/xml "access plus 0 seconds" 
    ExpiresByType application/xml "access plus 0 seconds" 
    ExpiresByType application/json "access plus 0 seconds" 

# Feed 
    ExpiresByType application/rss+xml "access plus 1 hour" 
    ExpiresByType application/atom+xml "access plus 1 hour" 

# Favicon (cannot be renamed) 
    ExpiresByType image/x-icon "access plus 1 week" 

# Media: images, video, audio 
    ExpiresByType image/gif "access plus 1 month" 
    ExpiresByType image/png "access plus 1 month" 
    ExpiresByType image/jpeg "access plus 1 month" 
    ExpiresByType video/ogg "access plus 1 month" 
    ExpiresByType audio/ogg "access plus 1 month" 
    ExpiresByType video/mp4 "access plus 1 month" 
    ExpiresByType video/webm "access plus 1 month" 

# HTC files (css3pie) 
    ExpiresByType text/x-component "access plus 1 month" 

# Webfonts 
    ExpiresByType application/x-font-ttf "access plus 1 month" 
    ExpiresByType font/opentype "access plus 1 month" 
    ExpiresByType application/x-font-woff "access plus 1 month" 
    ExpiresByType image/svg+xml "access plus 1 month" 
    ExpiresByType application/vnd.ms-fontobject "access plus 1 month" 

# CSS and JavaScript 
    ExpiresByType text/css "access plus 1 year" 
    ExpiresByType application/javascript "access plus 1 year" 

</IfModule> 


# ---------------------------------------------------------------------- 
# Prevent mobile network providers from modifying your site 
# ---------------------------------------------------------------------- 

# The following header prevents modification of your code over 3G on some 
# European providers. 
# This is the official 'bypass' suggested by O2 in the UK. 

# <IfModule mod_headers.c> 
# Header set Cache-Control "no-transform" 
# </IfModule> 


# ---------------------------------------------------------------------- 
# ETag removal 
# ---------------------------------------------------------------------- 

# FileETag None is not enough for every server. 
<IfModule mod_headers.c> 
    Header unset ETag 
</IfModule> 

# Since we're sending far-future expires, we don't need ETags for 
# static content. 
# developer.yahoo.com/performance/rules.html#etags 
FileETag None 


# ---------------------------------------------------------------------- 
# Stop screen flicker in IE on CSS rollovers 
# ---------------------------------------------------------------------- 

# The following directives stop screen flicker in IE on CSS rollovers - in 
# combination with the "ExpiresByType" rules for images (see above). 

# BrowserMatch "MSIE" brokenvary=1 
# BrowserMatch "Mozilla/4.[0-9]{2}" brokenvary=1 
# BrowserMatch "Opera" !brokenvary 
# SetEnvIf brokenvary 1 force-no-vary 


# ---------------------------------------------------------------------- 
# Set Keep-Alive Header 
# ---------------------------------------------------------------------- 

# Keep-Alive allows the server to send multiple requests through one 
# TCP-connection. Be aware of possible disadvantages of this setting. Turn on 
# if you serve a lot of static content. 

# <IfModule mod_headers.c> 
# Header set Connection Keep-Alive 
# </IfModule> 


# ---------------------------------------------------------------------- 
# Cookie setting from iframes 
# ---------------------------------------------------------------------- 

# Allow cookies to be set from iframes (for IE only) 
# If needed, specify a path or regex in the Location directive. 

# <IfModule mod_headers.c> 
# Header set P3P "policyref=\"/w3c/p3p.xml\", CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"" 
# </IfModule> 
+0

文件名是否包含unicode字符?因为我最后一次听说这个问题就是这种情况。 – Adder

+0

我不会说。该文件夹被称为“草图”。它旁边是“草图2”和“草图”,两者都可以看到。 – dakotapearl

+0

也许FileZilla无法辨别小写'草图'和大写'草图'的问题?在识别大小写的文件系统上都是ftp客户端和服务器吗? – Adder

回答

0

问题是存在的文件名仅在文件名的小写和大写不同。如果源系统和目标系统都具有区分大小写的文件系统,这可能会起作用,但它绝对不适用于Windows中的文件名。

+0

不错,再次感谢! – dakotapearl

相关问题