.htaccess教程

初学Play Framework(一) 下载安装jdk1.5以上,我用的是1.7然后下载play-1.2.7,版本可用别的,将play的根目录直接添加到环境变量Path打开命令行 输入“play new test”(名字自定义)然后会提示是否确认你的项目名,直接enter再输入 “play run test”打开 eclipse import项目,会出现很多文件夹,play框架运用的是MVC模式app文件夹便存放了Model、 View... 阅读详情

1.1 什么是.htaccess文件

从本指南中,你将可以学习到有关.htaccess文件及其功能的知识,并用以优化你的网站。尽管.htaccess只是一个文件,但它可以更改服务器的设置,允许你做许多不同的事情,最流行的功能是您可以创建自定义的“404 error”页面。.htaccess 并不难于使用,归根结底,它只是在一个text文档中添加几条简单的指令而已。

首先你要判断主机支持它

这可能很难用简单的答案来回答。许多主机支持.htaccess,但实际上并不会特别声明,许多其他类型的主机有能力但并不允许他们的用户使用. htaccess。一般来说,如果你的主机使用Unix或Linux系统,或任何版本的Apache网络服务器,从理论上都是支持.htaccess的,尽管你的主机服务商可能不允许你使用它。

判断你的主机是否允许.htaccess,一个标志很好的是它是否支持文件夹密码保护。为达到此功能,主机服务商需要使用.htaccess(当然,少数情况下他们虽提供密码保护功能,但却并不允许你使用.htaccess)。如果你不确定自己的主机是否支持.htaccess,最好的办法是上传你自己的.htaccess文件看看是否有用,或者直接发送e-mail向你的主机服务商咨询。

Apache系统中的.htaccess文件(或者”分布式配置文件”提供了针对目录改变配置的方法,即,在一个特定的文档目录中放置一个包含一个或多个指令的文件,以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。管理员可以通过Apache的AllowOverride指令来设置。

子目录中的指令会覆盖更高级目录或者主服务器配置文件中的指令。

.htaccess必须以ASCII模式上传,最好将其权限设置为644。

.htaccess可以做大量的事情,包括:文件夹密码保护、用户自动重定向、自定义错误页面、改变你的文件扩展名、封禁特定IP地址的用户、只允许特定IP地址的用户、禁止目录列表,以及使用其他文件作为index文件。

 

1.2 如何创建.httaccess文件

创建.htaccess文件也许会给你带来一些困难。写文件很容易,你只需要在文字编缉器(例如:写字板)里写下适当的代码。真正困难的可能是文件的保存,因为.htaccess是一个古怪的文件名(它事实上没有文件名,只有一个由8个字母组成的扩展名),而在一些系统(如windows 3.1)中无法接受这样的文件名。在大多数的操作系统中,你需要做的是将文档保存成名为:“.htaccess” (包括引号)。如果这也不行,你需要将其先命名为其它名字(例如htaccess.txt),再将其上传到服务器上,之后直接使用FTP软件来重命名。

警告

在使用.htaccess之前,我必须给你一些警告。虽然在服务器上使用.htaccess绝对不太可能给你带来任何麻烦(如果有些东西错了,它只是没效用罢了),但如果你使用Microsoft FrontPage Extensions,就必须特别小心。因为FrontPage Extensions本身使用了.htaccess,因此你不能编辑它并加入你自己的信息。如果确实有这方面的需要(并不推荐,但是可能),你应该先从服务器上下载.htaccess文档(如果存在),之后在前面加上你的代码。

2|.httacces文件的配置

 

2.1.配置.htaccess 自定义错误页

我要介绍的.htaccess的第一个应用是自定义错误页面,这将使你可以拥有自己的、个性化的错误页面(例如找不到文件时),而不是你的服务商提供的错误页或没有任何页面。这会让你的网站在出错的时候看上去更专业。你还可以利用脚本程序在发生错误的时候通知你(例如我使用Free Webmaster Help的PHP脚本程序,当找不到页面的时候自动e-mail给我)。

你所知道的任何页面错误代码(像404找不到页面),都可以通过在.htaccess文件里加入下面的文字将其变成自定义页面:

           ErrorDocument errornumber /file.html

举例来说,如果我的根目录下有一个nofound.html文件,我想使用它作为404 error的页面:

           ErrorDocument 404 /notfound.html

如果文件不在网站的根目录下,你只需要把路径设置为:

           ErrorDocument 500 /errorpages/500.html

以下是一些最常用的错误:

常用的客户端请求错误返回代码:

400 - Bad request 错误请求
401 Authorization Required需要验证
403 Forbidden禁止
404 Not Found找不到页面
405 Method Not Allowed
408 Request Timed Out
411 Content Length Required
412 Precondition Failed
413 Request Entity Too Long
414 Request URI Too Long
415 Unsupported Media Type

常见的服务器错误返回代码:

           500 Internal Server Error内部服务器错误

接下来,你要做的只是创建一个错误发生时显示的文件,然后把它们和.htaccess一起上传。

用户可以利用.htaccess指定自己事先制作好的错误提醒页面。一般情况下,人们可以专门设立一个目录,例如errors放置这些页面。然后再.htaccess中,加入如下的指令:

           ErrorDocument 404 /errors/notfound.html
           ErrorDocument 500 /errors/internalerror.html

一条指令一行。上述第一条指令的意思是对于404,也就是没有找到所需要的文档的时候得显示页面为/errors目录下的notfound.html页面。不难看出语法格式为:

           ErrorDocument 错误代码 /目录名/文件名.扩展名

如果所需要提示的信息很少的话,不必专门制作页面,直接在指令中使用HTML号了,例如下面这个例子:

           ErrorDocument 401 “你没有权限访问该页面,请放弃!”

 

2.2.配置.htaccess 停示显示目录列表

有些时候,由于某种原因,你的目录里没有index文件,这意味着当有人在浏览器地址栏键入了该目录的路径,该目录下所有的文件都会显示出来,这会给你的网站留下安全隐患。

为避免这种情况(而不必创建一堆的新index文件),你可以在你的.htaccess文档中键入以下命令,用以阻止目录列表的显示: Options -Indexes

 

2.3.配置.htaccess 阻止/允许特定的IP地址

某些情况下,你可能只想允许某些特定IP的用户可以访问你的网站(例如:只允许使用特定ISP的用户进入某个目录),或者想封禁某些特定的IP地址(例如:将低级用户隔离于你的信息版面外)。当然,这只在你知道你想拦截的IP地址时才有用,然而现在网上的大多数用户都使用动态IP地址,所以这并不是限制使用的常用方法。

你可以使用以下命令封禁一个IP地址:

           deny from 000.000.000.000

这里的000.000.000.000是被封禁的IP地址,如果你只指明了其中的几个,则可以封禁整个网段的地址。如你输入210.10.56.,则将封禁210.10.56.0~210.10.56.255的所有IP地址。

你可以使用以下命令允许一个IP地址访问网站:

           allow from 000.000.000.000

被允许的IP地址则为000.000.000.000,你可以象封禁IP地址一样封禁整个网段。

如果你想阻止所有人访问该目录,则可以使用:

           deny from all

不过这并不影响脚本程序使用这个目录下的文档。

 

2.4.配置.htaccess 替换index文件

改变缺省的首页文件

一般情况下缺省的首页文件名有default、index等。不过,有些时候目录中没有缺省文件,而是某个特定的文件名,比如在w3sky中是 w3sky.PHP。这种情况下,要用户记住文件名来访问很麻烦。在.htaccess中可以轻易的设置新的缺省文件名:

           DirectoryIndex 新的缺省文件名

也可以列出多个,顺序表明它们之间的优先级别,例如:

           DirectoryIndex filename.html index.cgi index.pl default.htm

也许你不想一直使用index.htm或index.html作为目录的索引文件。举例来说,如果你的站点使用PHP文件,你可能会想使用 index.PHP来作为该目录的索引文档。当然也不必局限于“index”文档,如果你愿意,使用.htaccess你甚至能够设置 foofoo.balh来作为你的索引文档!

这些互为替换的索引文件可以排成一个列表,服务器会从左至右进行寻找,检查哪个文档在真实的目录中存在。如果一个也找不到,它将会把目录列表显示出来(除非你已经关闭了显示目录文件列表)。

           DirectoryIndex index.PHP index.PHP3 messagebrd.pl index.html index.htm

 

2.5.配置.htaccess 重定向页面

.htaccess最有用的功能之一就是将请求重定向到同站内或站外的不同文档。这在你改变了一个文件名称,但仍然想让用户用旧地址访问到它时,变的极为有用。另一个应用(我发现的很有用的)是重定向到一个长URL,例如在我的时事通讯中,我可以使用一个很简短的URL来指向我的会员链接。以下是一个重定向文件的例子:

           Redirect /location/from/root/file.ext
           http://www.w3sky.com/new/file/123.html

上述例子中,访问在root目录下的名为oldfile.html可以键入:

           /oldfile.html

访问一个旧次级目录中的文件可以键入:

           /old/oldfile.html

你也可以使用.htaccess重定向整个网站的目录。假如你的网站上有一个名为olddirectory的目录,并且你已经在一个新网站 http://www.w3sky.com/newdirectory/上建立了与上相同的文档,你可以将旧目录下所有的文件做一次重定向而不必一一声明:

           Redirect /olddirectory http://www.w3sky.com/newdirectory

这样,任何指向到站点中/olddirectory目录的请求都将被重新指向新的站点,包括附加的额外URL信息。例如有人键入:

           http://www.w3sky.com/olddirecotry/oldfiles/images/image.gif

请求将被重定向到:

           http://www.w3sky.com/newdirectory/oldfiles/images/image.gif

如果正确使用,此功能将极其强大。

我们可能对网站进行重新规划,将文档进行了迁移,或者更改了目录。这时候,来自搜索引擎或者其他网站链接过来的访问就可能出错。这种情况下,可以通过如下指令来完成旧的URL自动转向到新的地址:

           Redirect /旧目录/旧文档名 新文档的地址

或者整个目录的转向:

           Redirect 旧目录 新目录

 

3.1.密码保护的.htaccess文件

尽管有各种各样的.htaccess用法,但至今最流行的也可能是最有用的做法是将其用于网站目录可靠的密码保护。尽管JavaScrip等也能做到,但只有.htaccess具有完美的安全性(即访问者必须知晓密码才可以访问目录,并且绝无“后门”可走)。

利用.htaccess将一个目录加上密码保护分两个步骤。第一步是在你的.htaccess文档里加上适当的几行代码,再将.htaccess文档放进你要保护的目录下:

           AuthName “Section Name”
           AuthType Basic
           AuthUserFile /full/path/to/.htpasswd
           Require valid-user

你可能需要根据你的网站情况修改一下上述内容中的一些部分,如用被保护部分的名字”Members Area”,替换掉“Section Name”。

/full/parth/to/.htpasswd则应该替换为指向.htpasswd文件(后面详述该文档)的完整服务器路径。如果你不知道你网站空间的完整路径,请询问一下你的系统管理员。

 

3.2.密码保护的.htpasswd文件

目录的密码保护比.htaccess的其他功能要麻烦些,因为你必须同时创建一个包含用户名和密码的文档,用于访问你的网站,相关信息(默认)位于一个名为.htpasswd的文档里。像.htaccess一样,.htpasswd也是一个没有文件名且具有8位扩展名的文档,可以放置在你网站里的任何地方(此时密码应加密),但建议你将其保存在网站Web根目录外,这样通过网络就无法访问到它了。1516501417

在使用.htaccess来设置目录的密码保护时,它包含了密码文件的路径。从安全考虑,有必要把.htaccess也保护起来,不让别人看到其中的内容。虽然可以用其他方式做到这点,比如文档的权限。不过,.htaccess本身也能做到,只需加入如下的指令:1516501417

           order allow,deny
           deny from all

 

3.3.配置 .htaccess 输入用户名和密码

要利用.htaccess对某个目录下的文档设定访问用户和对应的密码,首先要做的是生成一个.htpasswd的文本文档,例如:

           forge:y4E7Ec8e7EwV

这里密码经过加密,用户可以自己找些工具将密码加密成.htaccess支持的编码。该文档最好不要放在www目录下,建议放在www根目录文档之外,这样更为安全些。

有了授权用户文档,可以在.htaccess中加入如下指令了:

           AuthUserFile .htpasswd的服务器目录
           AuthGroupFile /dev/null (需要授权访问的目录)
           AuthName EnterPassword
           AuthType Basic (授权类型)

           require user wsabstract (允许访问的用户,如果希望表中所有用户都允许,可以使用 require valid-user)

注,括号部分为学习时候自己添加的注释

拒绝来自某个IP的访问

如果我不想某个政府部门访问到我的站点的内容,那可以通过.htaccess中加入该部门的IP而将它们拒绝在外。

例如:
           order allow,deny
           deny from 210.10.56.32
           deny from 219.5.45.
           allow from all

第二行拒绝某个IP,第三行拒绝某个IP段,也就是219.5.45.0~219.2.45.255

想要拒绝所有人?用deny from all好了。不止用IP,也可以用域名来设定。

创建好.htpasswd文档后(可以通过文字编辑器创建),下一步是输入用于访问网站的用户名和密码,应为:

           username:password

“password”的位置应该是加密过的密码。你可以通过几种方法来得到加密过的密码:一是使用一个网上提供的permade脚本或自己写一个;另一个很不错的username/password加密服务是通过KxS网站,这里允许你输入用户名及密码,然后生成正确格式的密码。

对于多用户,你只需要在.htpasswd文档中新增同样格式的一行即可。另外还有一些免费的脚本程序可以方便地管理.htpasswd文档,可以自动新增/移除用户等。

 

3.4.配置.htaccess 直接访问加密网站

当你试图访问被.htaccess密码保护的目录时,你的浏览器会弹出标准的username/password对话窗口。如果你不喜欢这种方式,有些脚本程序可以允许你在页面内嵌入username/password输入框来进行认证,你也可以在浏览器的URL框内以以下方式输入用户名和密码(未加密的):

           http://username:password@www.w3sky.com/directory/

 

3.5.利用 .htaccess 防止盗链

如果不喜欢别人在他们的网页上连接自己的图片、文档的话,也可以通过htaccess的指令来做到。

所需要的指令如下:

           RewriteEngine on
           RewriteCond %{ HTTP_REFERER } !^$
           RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
           RewriteRule .(gif &line;jpg)$ - [F]

如果觉得让别人的页面开个天窗不好看,那可以用一张图片来代替:

           RewriteEngine on
           RewriteCond %{ HTTP_REFERER } !^$
           RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
           RewriteRule .(gif &line;jpg)$ http://www.w3sky.com/替代图片文件名 [R,L]

 

3.6.利用 .htaccess进行地址转向

这种方法,就是把yourdomain.com的流量全部301转向到www.yourdomain.com(或者反过来)。其实对于这种方法,国外有人认为对PageRank没有帮助。我觉得是因为他们看到Google管理员工具中有一个首选域工具,可以指定Google的爬虫把 www.yourdomain.com或者yourdomain.com作为抓取和排名的首选域,转向似乎就没有必要了。但确实又有不少人证实这是有效的,反正目前还没有人说这种方法会对SEO或者pagerank有什么损害。

在.htaccess中写入:

              Options +FollowSymlinks All -Indexes
              rewriteEngine on
              rewriteBase /
              RewriteCond %{HTTP_HOST} ^domain.com$
              RewriteRule ^(.*)$
http://www.domain.com/$1 [R=301,L]

3.7.利用 .htaccess对域名中“www”的控制

强制去除3w

下面以 Wordpress 为例,其它的情况,可以自己参照解决。在你的 Wordpress 目录下通常会有一个 .htaccess 文件,如果没有,那就手动建立一个。如果你设定了 permalink 的话,.htaccess 里面的内容会有如下一坨:

             <IfModule mod_rewrite.c>
              RewriteEngine On
             RewriteBase /
             RewriteCond %{REQUEST_FILENAME} !-f
             RewriteCond %{REQUEST_FILENAME} !-d
             RewriteRule . /index.php [L]
             </IfModule>

具体是啥意思咱就甭管它了,只管在 RewriteBase / 这行下面加上:

             RewriteCond %{HTTP_HOST} ^www.yourdomain.tld$ [NC]
             RewriteRule ^(.*)$
http://yourdomain.tld/$1 [R=301,L]

这样就大功告成了。当然要把 yourdomain.tld 换成你自己的域名。上面两行的意思是把 www.yourdomain.tld 这种形式改写成 yourdomain.tld, 并把访问前者的所有链接永久转向到后者。

域名前强制加上www

如果你实在是坚持要把 www 加在前面,我上面的算是白写了,表示遗憾。但,你可以。只需把上面添加的两行代码改成这样:

             RewriteCond %{HTTP_HOST} ^yourdomain.tld$ [NC]
             RewriteRule ^(.*)$
http://www.yourdomain.tld/$1 [R=301,L]

4.1.     .htaccess 总结

.htaccess是一个站点管理员可以应用的强大工具,有更多的变化以适应不同的用途,可以节约时间及提高网站的安全性

.htaccess的特别说明

* 启用.htaccess,需要修改httpd.conf,启用AllowOverride,并可以用AllowOverride限制特定命令的使用
* 如果需要使用.htaccess以外的其他文件名,可以用AccessFileName指令来改变。例如,需要使用.config ,则可以在服务器配置文件中按以下方法配置:

           AccessFileName .config

* 一般情况下,不应该使用. htaccess文件,除非你对主配置文件没有访问权限。有一种很常见的误解,认为用户认证只能通过.htaccess文件实现,其实并不是这样,把用户认证写在主配置文件中是完全可行的,而且是一种很好的方法。.htaccess文件应该被用在内容提供者需要针对特定目录改变服务器的配置而又没有 root权限的情况下。如果服务器管理员不愿意频繁修改配置,则可以允许用户通过.htaccess文件自己修改配置,尤其是ISP在同一个机器上运行了多个用户站点,而又希望用户可以自己改变配置的情况下。虽然如此,一般都应该尽可能地避免使用.htaccess文件。任何希望放在.htaccess文件中的配置,都可以放在主配置文件的<Directory>段中,而且更高效。避免使用.htaccess文件有两个主要原因,即性能和安全。

附:.htaccess工具连接

在线 .htaccess文件生成器

http://cooletips.de/htaccess/
能够在线生成. htaccess文件,很简单的就配置重定向,系统错误文件等。

.htaccess编辑器在线编辑器

可自定义默认编码,错误页面等等
下载地址: http://9458398.cn/attachments/month_0506/zxp4_my.rar

 

 

 /rental/property/23425
你可能认为上面的那个地址是rewrite的结果。你错了。是在.htaccess中使用了如下内容:
<Files rental>
    ForceType application/x-httpd-php
</Files>
文件被apache当作PHP脚本来执行。意思是你可以使用REQUEST_URI这个服务器变量来得到提交的URL,然后显示内容。
Play Framework系列之一如何搭建一个play 框架的spring体系 1 摘要      四年前,从spring mvc框架转移到play framework框架完全是为了更快,更好的去创业,那时候由于spring mvc配置的臃肿,以及不堪忍受tomcat研发时的加载,一度想去转向php开发,但很难舍弃对java的热爱,无意中发现了play framework,让我眼前一亮,随即花了一两天时间对它进行深入的研究,发现它就是我理想中想要的java框架,即满足我的... 阅读详情

相关推荐

nginx将xxx.com重定向到www.xxx.com配置

有时候,我们网站,需要将顶级域名xxx.com统一跳转到二级域名www.xxx.com下。这时候,我们可以通过修改nginx配置达到我们的目的。

猿小白的博客 9万+

http://www.xxx.com/ skipped. Content of size 67099 was truncated to 59363

如果提示http://www.xxx.com/ skipped. Content of size 67099 was truncated to 59363 在nutch-site.xml中添加: [code="java"] parser.skip.truncated false [/code] 这是因为网站的页面内容采用truncate的方式分段返回,而nutch...

aa346359669的博客 165万+

DH_IPC-HX4XXX-Eos4_Chn_PN_Stream3_V2.680.0000000.2.R.190410.bin

运动高手秀的摄像头,默认是不支持乐橙云的,升级这个固件可以支持乐橙云,在自己的手机上面观看,实现随时随地的查看自己的摄像头,之所以提供给大家是因为我自己使用后感觉非常方便。这是冒着摄像头被杀死的风险测试出来的一个固件

java.net.UnknownHostException: www.xxx.com: Name or service not known的某种情况

我一般只记录不是网上给出的大众答案。 很明显很多人搜到的结论是: 修改服务器hosts文件: vi/etc/hosts 添加记录行: 127.0.0.1 www.xxx.com 这只是把这个无法识别的域名映射到本地了,有点掩耳盗铃。我是真的需要访问这个www.xxx.com提供的接口,所以不能用改host解决。 搜到的别的奇形怪状的解释我就不提了,我这里出现的问题是: 这个www.xxx.com的接口提供者要求使用https访问,并且给了我两个证书:Intermediate.crt和Roo...

九尾狐的yi巴的博客 87万+

Python画常见分布的概率密度图

因为做概随大作业,了解了一些python画概率分布图的方法。

qq_44807946的博客 5204

STM32 HAL库驱动BMP388:从寄存器配置到高精度气压温度采集

本文详细介绍了如何使用STM32 HAL库驱动BMP388气压温度传感器,实现高精度数据采集。内容涵盖从硬件连接到STM32CubeMX配置、关键寄存器解析、驱动源码编写,到核心补偿算法与海拔换算的完整流程,并提供了针对不同应用场景的优化配置与调试技巧,帮助开发者快速构建稳定可靠的测量方案。

weixin_29299807的博客 171

xxx.com和www.xxx.com的区别

XXX.com 是主域名! WWW.xxx.com 一般是域名的主页! 在很多情况下,会配置成一样!!! 也有可能,主域名不配置到具体的IP,可能无法解析。。 C:\Windows\system32&gt;nslookup baidu.com 服务器: UnKnown Address: 61.128.114.133 非权威应答: 名称: baidu.com Addresses: 22...

weixin_42613703的博客 97万+

FreeRTOS移植实战:从零开始在STM32上搭建多任务系统(含Proteus仿真配置)

本文详细介绍了如何在STM32平台上从零开始移植FreeRTOS,并搭建多任务系统,包含Proteus仿真配置。通过环境准备、源码移植、多任务设计到仿真调试的全流程实战,帮助开发者快速掌握FreeRTOS在STM32上的应用技巧,提升嵌入式开发效率。

weixin_33737134的博客 232

play framework 简介

本文翻译自Play官方文档。原文见:http://www.playframework.org/documentation/1.1.1/main Play Framework是一个Rails风格的Full-stack Java Web框架。 MVC模型 Play应用遵循Web架构使用的MVC架构模式。 它将应用分离到不同的层中:表现层(Presentation)和模型层(Mo

q2267671366的专栏 531

SRT公网点对点传输及搭建SRT流媒体服务器

SRT是一种开源传输技术,它是基于UDP协议的,与RTMP不同的是,它具有高码率低延迟的传输特性,加强了在复杂不稳定网络环境中的传输可靠性,提升了不可预测的网络环境上的流传输性能。它不像NDI那样只适用于局域网传输,它更适用于公网环境下的信号传输。 S代表Secure,即安全加密的视频流,R代表Reliable,即具有从数据严重丢包中恢复的可靠性,T代表Transport,即动态适应变化的网络状况。 在音视频数据包传输的过程中,SRT会检测并适应两个传输点之间的实时网络状况,有助于补偿由于网络的拥塞而引起的

罗宇。的媒体技术工作室 1万+

SAP 采购订单入库——移动类型

业务场景:采购入库,实物入库至仓库,然后系统同步过账。MIGO:收货、采购订单。 MVT:101 入库,---库存增加。 MVT:移动类型,就是代表业务场景,(比如入库、发货,成本中心发、工单发、报废、盘赢、盘亏等等) 移动类型 1、正向采购入库:101 2、反向冲销(MIGO)102:与101相反,用于错误操作的反向冲销。参考原凭证,全部进行一...

willieyuan的博客 7780

Play Framework简介

      前言       之前在《程序员》杂志上看到过一篇文章介绍Play Framework,厌倦了Struts2-Spring的开发模式后打算自学这个开发框架。于是wiki了下Play Framework ,并简单翻译了下wiki上的内容。        Play 是一个开源的Web应用框架,使用Java语言编写,并遵循了MVC模式。旨在通过约定大于配置,热部署,浏览器提示错误等...

Gordon的博客 282

Swin Transformer注意力计算复杂度为何比全局注意力少那么多?

本文对比分析了Vision Transformer(ViT)和Swin Transformer的计算复杂度。ViT采用全局注意力机制,计算复杂度为4[hwc^2]+2[(hw)^2C],当图像尺寸较大时计算量显著增加。而Swin Transformer采用窗口注意力机制,将图像划分为M×M的窗口(如7×7),计算复杂度降为4[hwc^2]+2[(hw)(M*M)*C]。以224×224图像为例,Swin Transformer的计算量比ViT减少约900倍,大幅节省了计算资源。文章通过矩阵乘法运算详细推导了

人工智能研究所的博客 62

Play framework简介

本文翻译自Play官方文档。原文见:http://www.playframework.org/documentation/1.1.1/main Play Framework是一个Rails风格的Full-stack Java Web框架。 MVC模型 Play应用遵循Web架构使用的MVC架构模式。 它将应用分离到不同的层中:表现层(Presentation)和模型层(Model)。表现层

VergiL Wang的专栏 871

修复Oracle MySQL Server 安全漏洞(CVE-2023-0464)

修复Oracle MySQL Server 安全漏洞(CVE-2023-0464)

路~可以走过 3683

对偶分解算法详解及其Python实现

对偶分解算法是一种广泛应用于求解凸优化问题的有效方法,尤其在大规模数据处理和分布式计算中展现出强大的实用性。在许多实际应用中,直接求解原始问题可能由于计算复杂度过高、资源受限或问题规模过大而变得不可行。这时,对偶分解方法为我们提供了一种高效的替代方案。对偶分解算法的核心思想是将复杂的原问题转化为其对应的拉格朗日对偶问题。通过引入拉格朗日乘子并构造对偶函数,该方法在一定程度上简化了问题的求解过程。特别是,对于包含多个约束条件的大规模优化问题,对偶分解可以将原问题分解为若干个小规模、相互独立的子问题。

闲人编程的博客 1752

Play Framework 2.5 环境搭建与新建项目(一)

简介Play Framework是啥?引用下百度百科的说法: Play!是一个full-stack(全栈的)Java Web应用框架,包括一个简单的无状态MVC模型,具有Hibernate的对象持续,一个基于Groovy的模板引擎,以及建立一个现代Web应用所需的所有东西。

#include 4627

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

play framework 从环境搭建到简单运行

download 官网:https://www.playframework.com/ 将zip下载至本地,进行unzip。 环境变量 检测是否安装成功:解压成功后进入解压的目录,运行 play 终端显示 zsh: command not found: play 需要配置环境变量 mac /linux: zsh: vi ~/.zshrc...

as403045314的博客 2万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

linux配置Play Framework

今天公司同事让我安装Play Framework,Play Framework是一个Rails风格的Full-stack Java Web框架,具体的情况请大家自己百度,这里就不详细介绍了.     系统:centos 5.5     需要的软件:play-1.2.4.zip jdk-7u3-linux-i586.rpm 1.安装前准备 去官网下载Linux平台上的JDK

xiaohubeiplus的博客 3079

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Play! Framework 另一个web框架

Play框架是我在spring之外接触的一个新的框架,这个框架基于scala语言,Scala也是运行在JVM上面的,他的字节码因此可以和Java互通,因此,即使完全不明白Scala也是可以使用这个框架进行开发的,但是坑的确多。 创建和导入 首先下载Play框架的SDK,直接去play官网下载就行,然后下载好了解压,路径填入系统的环境变量,都是常规操作,没啥说的,然后打开控制台或者终端输入play,...

风铃之书 4276

5分钟上手play-bootstrap:新手必备的Play Framework前端开发工具

play-bootstrap是一款专为Play Framework设计的前端开发工具,它提供了丰富的输入助手和字段构造器,帮助开发者快速渲染Bootstrap HTML代码,极大地简化了表单开发流程。无论是新手还是有经验的开发者,都能通过它轻松构建出美观且功能完善的前端界面。 ## 🚀 什么是play-bootstrap? play-bootstrap是一个针对Play Framework的

gitblog_00695的博客 461

Play Framework 示例项目推荐

Play Framework 示例项目推荐 项目介绍 Play Framework 是一个高效、轻量级的 Java 和 Scala 开发框架,专注于提供快速、可扩展的 Web 应用程序开发体验。Play Framework 示例项目(Play-Samples)是一个官方维护的开源项目,旨在帮助开发者快速上手并深入理解 Play Framework 的核心概念和最佳实践。 项目技术分析 Play-S...

gitblog_00464的博客 696
上一篇: 正则表达式快速入门
下一篇: PHP 面向对象技术
subnet
博客等级 码龄23年 9粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值