怎样删除new folder

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样删除new folder相关的知识,希望对你有一定的参考价值。

怎样删除new folder

参考技术A 先用350分碎
如果成功
直接删除New folder.exe就OK了
(有时候可能会删除不了 因为它会提示正被什么程序使用 所以要用350先粉碎 我想 因该会成功)

哦 还有一点 最好不要用瑞星 用卡巴斯基 因为 瑞星它妈的要两三天 三四天才更新一次病毒库 而卡巴 几小时就能更新一次 保护更佳)本回答被提问者采纳
参考技术B 永远永远永远永远永远永远永远永远永远永远永远永远永远永远也一样

当'index.html'被剥离时,如何删除'/folder/index.html'的尾部斜杠?

【中文标题】当\'index.html\'被剥离时,如何删除\'/folder/index.html\'的尾部斜杠?【英文标题】:How to remove trailing slash for '/folder/index.html', when 'index.html' is stripped?当'index.html'被剥离时,如何删除'/folder/index.html'的尾部斜杠? 【发布时间】:2012-10-25 11:17:06 【问题描述】:

我有一个具有以下文件/文件夹结构的静态站点:

index.html /foobar/ index.html bob.html alice.html

我想实现以下目标:

删除所有.html 扩展。 ✔ 有效 删除index.html(分别为index)。 ✔ 有效 我希望文件结尾没有斜杠。 ✔ 有效 如果有人添加了斜杠,则重定向到不带斜杠的 URL。 ✘ 不起作用 我希望“文件夹”(实际上是文件夹内的 index.html 文件)结束时没有斜杠。 ✘ 不起作用 如果有人添加了斜杠,则重定向到不带斜杠的 URL。 ✘ 不起作用

所以以下 URL 应该可以工作:

example.com/(其实是:/index.htmlexample.com/foobar(其实是:/foobar/index.htmlexample.com/foobar/bob(其实是:/foobar/bob.htmlexample.com/foobar/alice(其实是:/foobar/alice.html

以下请求应重定向 (301):

example.com/foobar/ 重定向到:example.com/foobar) example.com/foobar/bob/ 重定向到:example.com/foobar/bob) example.com/foobar/alice/ 重定向到:example.com/foobar/alice)

我看到当文件/foobar.html存在时这会产生问题:当有人访问/foobar时,不清楚是请求目录还是文件。不过,我会确保这永远不会发生。


目前,我有这个.htaccess

# Turn MultiViews off. (MultiViews on causes /abc to go to /abc.ext.) 
Options +FollowSymLinks -MultiViews

# It stops DirectorySlash from being processed if mod_rewrite isn't. 
<IfModule mod_rewrite.c>

    # Disable mod_dir adding missing trailing slashes to directory requests.
    DirectorySlash Off

    RewriteEngine On

    # If it's a request to index(.html) 
    RewriteCond %THE_REQUEST \ /(.+/)?index(\.html)?(\?.*)?\  [NC]
    # Remove it. 
    RewriteRule ^(.+/)?index(\.html)?$ /%1 [R=301,L]

    # Add missing trailing slashes to directories if a matching .html does not exist. 
    # If it's a request to a directory. 
    RewriteCond %SCRIPT_FILENAME/ -d
    # And a HTML file does not (!) exist.
    RewriteCond %SCRIPT_FILENAME.html !-f
    # And there is not trailing slash redirect to add it. 
    RewriteRule [^/]$ %REQUEST_URI/ [R=301,L]

    # Remove HTML extensions. 
    # If it's a request from a browser, not an internal request by Apache/mod_rewrite. 
    RewriteCond %ENV:REDIRECT_STATUS ^$
    # And the request has a HTML extension. Redirect to remove it. 
    RewriteRule ^(.+)\.html$ /$1 [R=301,L]

    # If the request exists with a .html extension. 
    RewriteCond %SCRIPT_FILENAME.html -f
    # And there is no trailing slash, rewrite to add the .html extension. 
    RewriteRule [^/]$ %REQUEST_URI.html [QSA,L]

</IfModule>

我必须在我的.htaccess 中更改/删除/添加什么?我不太明白。我试图删除注释“如果匹配的 .html 不存在,则在目录中添加缺少的尾部斜杠”的块,但这没有帮助。

【问题讨论】:

FWIW,我在 Code Review 上询问了可能的改进:codereview.stackexchange.com/q/18440/16414 【参考方案1】:

# Add missing trailing slashes to directories if a matching .html does not exist. 规则的正上方,尝试添加此规则,当存在 html 文件且请求不是目录且尾部有斜杠时重定向:

# if request has a trailing slash
RewriteCond %REQUEST_URI ^/(.*)/$
# but it isn't a directory
RewriteCond %DOCUMENT_ROOT/%1 !-d
# and if the trailing slash is removed and a .html appended to the end, it IS a file
RewriteCond %DOCUMENT_ROOT/%1.html -f
# redirect without trailing slash
RewriteRule ^ /%1 [L,R=301]

这不应该与它后面的重定向规则冲突,因为它的条件检查正好相反。


编辑:

要处理 index.html 的事情,您需要更改您拥有的这条规则,即附加尾部斜杠:

# Add missing trailing slashes to directories if a matching .html does not exist. 
# If it's a request to a directory. 
RewriteCond %SCRIPT_FILENAME/ -d
# And a HTML file does not (!) exist.
RewriteCond %SCRIPT_FILENAME.html !-f
# And there is not trailing slash redirect to add it. 
RewriteRule [^/]$ %REQUEST_URI/ [R=301,L]

收件人:

# Add missing trailing slashes to directories if a matching .html does not exist. 
# If it's a request to a directory. 
RewriteCond %REQUEST_FILENAME/ -d
# And a HTML file does not (!) exist.
RewriteCond %REQUEST_FILENAME/index.html !-f
# And there is not trailing slash redirect to add it. 
RewriteRule [^/]$ %REQUEST_URI/ [R=301,L]    

这会在添加尾部斜杠之前检查目录中的index.html 文件是否缺失。您必须拥有这个的原因是information disclosure security issue when missing the trailing slash will actually expose all of your directory contents if you don't have the trailing slash。现在,添加这些规则以在有 index.html 时删除尾部斜杠:

RewriteCond %REQUEST_FILENAME -d
# And a HTML file exists.
RewriteCond %REQUEST_FILENAME/index.html -f
# And there is a trailing slash redirect to remove it. 
RewriteRule ^(.*?)/$ /$1 [R=301,L]    

现在添加这些规则以在没有尾部斜杠时显式显示index.html(注意规则标志中没有R=301):

RewriteCond %REQUEST_FILENAME -d
# And a HTML file exists.
RewriteCond %REQUEST_FILENAME/index.html -f
# And there is no trailing slash show the index.html. 
RewriteRule [^/]$ %REQUEST_URI/index.html [L]    

【讨论】:

谢谢,乔恩。有用。我在回答中将这一点标记为有效。您是否也知道如何让其他两点发挥作用? @unor 这个规则处理了所有 3 个“不起作用”的点,这就是为什么会有所有额外的条件。对我有用,或者我不明白你想要什么。 嗯,如果我访问example.com/foobar(不带斜杠),我会被重定向到example.com/foobar/(带斜杠)。我想显示文件/foobar/index.html,但URL 为/foobar @unor 你是否设法重定向到只显示/foobar

以上是关于怎样删除new folder的主要内容,如果未能解决你的问题,请参考以下文章

如何删除病毒New folder.exe

电脑里有个叫New folder的文件夹【不是1kb病毒】能不能删除这个文件夹?删除的话出现了需要administrator

电脑中了Newfolder病毒,谁知道怎么解决

如何在javafx treeview中返回已删除的treeitems?

Win7如何批量删除.svn文件

EBS form动态隐藏folder列