2017-06-14 17 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

相關問題