㈠ 如何在windows下apache环境开启htaccess伪静态功能
.htaccess是一种非常强大的配置文件一般情况下用于虚拟主机可是由于wordPress等开源程序自动生成.htaccess,所以导致一些使用VPS的站长无法正常使胡做用下面介绍让Windows环境下的Apache支持.htaccess伪静态的方法修改Apache1、打开Apache conf目录下的httpd.conf2、找到ApacheLoadMole rewrite_mole moles/mod_rewrite.so去掉这句前面的#注释符号3、寻找关键词:AllowOverride,并把后面的参数从None全部改成All4、若你对域名绑定进行了配置,请找弊信到extra/httpd-vhosts.conf,打开编辑同样找到AllowOverride,并把后面的参数从None全部改成All5、结束上面的配置后,重启你的Apache配置.htaccess由租做轮于Windows环境并不支持只有后缀名的文件名,我们可以通过多种方法创建.htaccess文件1、使用FTP上传2、创建一个bat文件,写上以下内容:echo a> .htaccess接着就会在这个bat的运行目录创建一个.htaccess文件
㈡ 关于虚拟主机中的.htaccess和php.ini
慢?这个应该不至于吧,虽然理论上估计是会慢点。但这个我觉得就好像一天的时间,你浪费一秒这样的慢吧。是一种可以忽略的慢吧php.ini里设置与.htaccess中设置有什么不同?实现的效果是嫌腊改一样的。但.htaccess是分布式动态配置文件,芹判也就是说你的配置如果写在.htaccess里,是会立刻生效局拿。而不用重启用什么的。
㈢ 怎么防止htaccess被修改
想要防止htaccess被修改,可以先去掉其中的恶毒代码。htaccess文件(或者”分布式配置文件”),全称是Hypertext Access(超文本入口)。提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。Htaccess虽然对网站的用处很大,但是,有时会出现黑客的攻击,为了防止htaccess被修改,可以去掉其中的恶毒代码,这样可以防止一些常见恶意URL匹配的黑客攻击技术。
㈣ htaccess编写规则
.htaccess基本语法和应用.htaccess是Apache服务器的一个非常强大的分布式配置文件。正确的理解和使用.htaccess文件,可以帮助我们优化自己的服务器或者虚拟主机。如何启用htaccess以windows为例,进入apache/conf目录,找到httpd.conf文件,去掉LoadMole rewrite_mole moles/mod_rewrite.so前面的#,然后设置目录属性AllowOverride All,重启apache即可常见格式下面是一个典型的htaccess文件# 开启URL重写RewriteEngine on# URL重写的作用域RewriteBase /path/to/url# 满足怎样的条件RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]# 应用怎样的规则RewriteRule .? http://www.example.com%{REQUEST_URI} [R=301,L]来看看RewriteCond,首先有一个%,因为{HTTP_HOST}是一个apache变量,需要用%来指示。从!开始就是匹配让帆的条件,支持 正则。!表示不等于,这句话的意思就是:如果HTTP_HOST不是www.example.com。后面的[NC](no case)表示忽略大小写,常见的还有[L](last):终止一系列的RewriteCond和RewriteRule[R](redirect):触发一个显示的跳转,也可以指定跳转类型,如[R=301][F](forbidden):禁告滑斗止查看特定文件,apache会触发403错误典型应用图片防盗链RewriteCond %{HTTP_REFERER} !^$RewriteCond %{HTTP_REFERER} !^http://(www\.)?example\.com/ [NC]RewriteRule \.(gif|jpg|png)$ – [F]由于是基于HTTP_REFERER的验证,所以只能防止一般的图片盗链,因为HTTP_REFERER是比较容易伪造的自定义404错误页面如果用户输入了一个不存在的url,那么就显示自定义的错误页面ErrorDocument 404 /404.html# 其他同理ErrorDocument 500 /500.html处理移动过的文件Redirect 301 /old.html http://yoursite.com/new.html# 也可以是下面这样RewriteRule /old.html http://yoursite.com/new.html [R=301,L]# 如果想隐式跳转(URL地址不变,但实际上内容是其他URL的),就使用下面的RewriteRule /old.html http://yoursite.com/new.html [L]对于RewriteRule还有好多文章可以做,比如# 把html后缀的url链接到php文件# $1指代的是前面第1个用括号括起来的内容RewriteRule ^/?([a-z/]+)\.html$ $1.php [L]# 或者把旧文件夹的内容链接到新文件夹RewriteRule ^/?old_directory/([a-z/.]+)$ new_directory/$1 [R=301,L]# 隐藏文件名RewriteRule ^/?([a-z]+)$ $1.php [L]禁止显示目录列表如果目录里没有index文件,又没有对该目录做过特别的处理,尤其是windows主机,那么该目录里的内容就会显示出来,这时袜磨可以在根目录创建 一个.htaccess文件,然后写上Options -Indexes# 就这么一句就搞定了阻止/允许特定IP/IP段# 禁止所有IP,除了指定的order deny,allowdeny from all# 如果想允许IP段,如123.123.123.0 ~ 123.123.123.255,则# allow from 123.123.123.allow from 123.123.123.123ErrorDocument 403 /page.html<Files page.html>allow from all</Files>#如果想禁止特定IPdeny from 123.123.123.123添加MIME类型AddType video/x-flv .flv# 如果设置类型为 application/octet-stream 将提示下载AddType application/octet-stream .pdf
㈤ .htaccess文件应该放在哪个文件夹下
.htaccess文件可以放在根目录中,也可绝链以放在需要配置的多个文件夹中。
总之,htaccess文件是Apache服务器中的配置文件,负责相关目录中的网页配置。通过htaccess文件,我们可以帮助我们:网页301重定向,自定义404错误页面,更改文件扩展名,允许/阻止访问特定用亩简户或目录,禁用目录列表,配置默认文档等。
.htaccess可以实现,包括:文件夹密码保护,自动用户重定向,自定义错误页面,更改文件扩展名,阻止特定IP地址,仅允许特定IP地址,禁用目录列表和使用其他文件充当索引文件和其它功能。
(5)htaccess配置文件是什么扩展阅读:
.htaccess未使用的情况:
在正常情况下,除非您无权访问主配置文件,否则不应使用.htaccess文件。有一种非常普遍的误解,即用户身份验证只能通过.htaccess文件来实现。不是这种情况。在主配置文件中编写用户认证是完全可行的,这是一种很好的方法。
当内容提供者需要在没有root权限的情况下更改特定目录的服务器配置时,应使用.htaccess文件。如果服务器管理员不愿意频繁修改配置,则可以允许并耐孙用户通过.htaccess文件修改配置,特别是如果ISP在同一台机器上运行多个用户站点,并希望用户可以更改配置他自己。
通常,您应该尽可能避免使用.htaccess文件。您希望放在.htaccess文件中的任何配置都可以放在主配置文件的<Directory>部分中,并且效率更高。
如果AllowOverride启用了.htaccess文件,Apache需要在每个目录中查找.htaccess文件,因此启用.htaccess将导致性能下降,无论是否实际使用。此外,对于每个请求,您需要读取.htaccess文件一次。
㈥ 用WordPress程序做的网站为何不能删除空间上的【.htaccess】文件。
不能删应该是你服务器的用户权限设定导致,并不是Wordpress的问题。.htaccess文件可以控制一些目录和文件的访问权限,如果删除默认给你的.htaccess你的wordpress可能面临安全隐患,所以最好别删,除非你拥有整个PHP服务器的控制权限,并熟悉Wordpress且可以修改PHP.ini禁止从HTTP对一些文件的访问。
㈦ .htaccess是干什么用的
工作原理和使用方法 .htaccess文件(或者"分布式配置文件")提供了针对每个目录改变配置锋慎的方法,即在一个特定的目录中放置一个包含指令的文件,其中的指令作用于此目录及其所有子目录。 说明: 如果需要使用.htaccess以外的其他文件名,可以用AccessFileName指令来改变。例如,需要使用.config ,则可以在服务器配置文件中按以下方法配置: AccessFileName .config 通常,.htaccess文件使用的配置语法和主配置文件一样。AllowOverride指令按类别决定了.htaccess文件中哪些指令才是有效的。如果一个指令允许在.htaccess中使用,那么在本手册的说明中,此指令会有一个覆盖项段,其中说明了为使此指令生效而必须在AllowOverride指令中设置的值。 例如,本手册对AddDefaultCharset指令的阐述表明此指令可以用于.htaccess文件中(见"作用域"项),而覆盖项一行是FileInfo ,那么为了使.htaccess中的此指令有效,则至少要设置 AllowOverride FileInfo 。 例子:烂橡 作用域 server config, virtual host, directory, .htaccess 覆盖项 FileInfo 如果不能确定某个指令是否可以用于.htaccess文件,可以查阅手册中银历敬对指令的说明,看在"作用域"行中是否有".htaccess" 。 (不)使用.htaccess文件的场合 一般情况下,不应该使用.htaccess文件,除非你对主配置文件没有访问权限。有一种很常见的误解,认为用户认证只能通过.htaccess文件实现,其实并不是这样,把用户认证写在主配置文件中是完全可行的,而且是一种很好的方法。 .htaccess文件应该被用在内容提供者需要针对特定目录改变服务器的配置而又没有root权限的情况下。如果服务器管理员不愿意频繁修改配置,则可以允许用户通过.htaccess文件自己修改配置,尤其是ISP在同一个机器上运行了多个用户站点,而又希望用户可以自己改变配置的情况下。 虽然如此,一般都应该尽可能地避免使用.htaccess文件。任何希望放在.htaccess文件中的配置,都可以放在主配置文件的<Directory>段中,而且更高效。 避免使用.htaccess文件有两个主要原因。 首先是性能。如果AllowOverride启用了.htaccess文件,则Apache需要在每个目录中查找.htaccess文件,因此,无论是否真正用到,启用.htaccess都会导致性能的下降。另外,对每一个请求,都需要读取一次.htaccess文件。 还有,Apache必须在所有上级的目录中查找.htaccess文件,以使所有有效的指令都起作用(参见指令的生效),所以,如果请求/www/htdocs/example中的页面,Apache必须查找以下文件: /.htaccess /www/.htaccess /www/htdocs/.htaccess /www/htdocs/example/.htaccess 总共要访问4个额外的文件,即使这些文件都不存在。(注意,这可能仅仅由于允许根目录"/"使用.htaccess ,虽然这种情况并不多。) 其次是安全。这样会允许用户自己修改服务器的配置,这可能会导致某些意想不到的修改,所以请认真考虑是否应当给予用户这样的特权。但是,如果给予用户较少的特权而不能满足其需要,则会带来额外的技术支持请求,所以,必须明确地告诉用户已经给予他们的权限,说明AllowOverride设置的值,并引导他们参阅相应的说明,以免日后生出许多麻烦。 注意,在/www/htdocs/example目录下的.htaccess文件中放置指令,与在主配置文件中<Directory /www/htdocs/example>段中放置相同指令,是完全等效的。 /www/htdocs/example目录下的.htaccess文件: /www/htdocs/example目录下的.htaccess文件的内容: AddType text/example .exm httpd.conf文件中摘录的内容: <Directory /www/htdocs/example> AddType text/example .exm </Directory> 但是,把配置放在主配置文件中更加高效,因为只需要在Apache启动时读取一次,而不是在每次文件被请求时都读取。 将AllowOverride设置为none可以完全禁止使用.htaccess文件: AllowOverride None 指令的生效 .htaccess文件中的配置指令作用于.htaccess文件所在的目录及其所有子目录,但是很重要的、需要注意的是,其上级目录也可能会有.htaccess文件,而指令是按查找顺序依次生效的,所以一个特定目录下的.htaccess文件中的指令可能会覆盖其上级目录中的.htaccess文件中的指令,即子目录中的指令会覆盖父目录或者主配置文件中的指令。 例子: /www/htdocs/example1目录中的.htaccess文件有如下内容: Options +ExecCGI (注意:必须设置"AllowOverride Options"以允许在.htaccess中使用"Options"指令) /www/htdocs/example1/example2目录中的.htaccess文件有如下内容: Options Includes 由于第二个.htaccess文件的存在,/www/htdocs/example1/example2中的CGI执行是不允许的,而只允许 Options Includes ,它完全覆盖了之前的设置。 将.htaccess合并到主配置文件中 正如在配置段(容器)中讨论的那样,.htaccess文件能够覆盖<Directory>段中对相应目录的设置,但是也同样会被主配置文件中其它类型的配置段所覆盖。这个特性可以用来强制实施某些配置,甚至在AllowOverride已经许可的情况下。举个例子来说,为了强迫在.htaccess中禁止脚本执行但不限制其它的情况下,可以这样: <Directory /> Allowoverride All </Directory> <Location /> Options +IncludesNoExec -ExecCGI </Location> 认证举例 如果你只是为了知道如何认证,而直接从这里开始看的,有很重要的一点需要注意,有一种常见的误解,认为实现密码认证必须要使用.htaccess文件,其实是不正确的。把认证指令放在主配置文件的<Directory>段中是一个更好的方法,而.htaccess文件应该仅仅用于无权访问主配置文件的时候。参见上述关于何时应该与何时不应该使用.htaccess文件的讨论。 有此声明在先,如果你仍然需要使用.htaccess文件,请继续看以下说明。 .htaccess文件的内容: AuthType Basic AuthName "Password Required" AuthUserFile /www/passwords/password.file AuthGroupFile /www/passwords/group.file Require Group admins 必须设置 AllowOverride AuthConfig 以允许这些指令生效。 更详细的说明,请参见认证、授权、访问控制。 服务器端包含(SSI)举例 .htaccess文件的另一个常见用途是允许一个特定的目录使用服务器端包含(SSI),可以在需要的目录中放置.htaccess文件,并作如下配置: Options +Includes AddType text/html shtml AddHandler server-parsed shtml 注意,必须同时设置 AllowOverride Options 和 AllowOverride FileInfo 以使这些指令生效。 更详细的有关服务器端包含的说明,请参见SSI指南。 CGI举例 可以通过.htaccess文件允许在特定的目录中执行CGI程序,需要作如下配置: Options +ExecCGI AddHandler cgi-script cgi pl 另外,如下配置可以使给定目录下的所有文件被视为CGI程序: Options +ExecCGI SetHandler cgi-script 注意,必须同时设置 AllowOverride Options 和 AllowOverride FileInfo 以使这些指令生效。 更详细的有关CGI编程和配置的说明,请参见CGI指南。 疑难解答 如果在.htaccess文件中的某些指令不起作用,可能有多种原因。 最常见的原因是AllowOverride指令没有被正确设置,必须确保没有对此文件区域设置 AllowOverride None 。有一个很好的测试方法,就是在.htaccess文件随便增加点无意义的垃圾内容,如果服务器没有返回了一个错误消息,那么几乎可以断定设置了 AllowOverride None 。 在访问文档时,如果收到服务器的出错消息,应该检查Apache的错误日志,可以知道.htaccess文件中哪些指令是不允许使用的,也可能会发现需要纠正的语法错误。
㈧ .htaccess文件的常见用法(301、404等配置)
body{line-height:200%;}.htaccess文件的常见用法(301、404等配置).htaccess文件是apache服务器中的一个配置文件,它的功能是网站目录的配置。通过.htaccess文件,可以实现以下功能:网页301重定向、防盗链、自定义404错误页面、用户认证和授权、禁止目录列表、配置默认文档等功能。.htaccess文件实现301重定向RewriteEngineonrewritecond%{http_host}^zzidc.com[nc]rewriterule^(.*)$http://zzidc.com/$1[L,R=301].htaccess文件实现404<Files~"^.(htaccess|htpasswd)$">denyfromall</Files>ErrorDocument404/404.html //此段为功能代码orderdeny,allow.htaccess文件实现用户认证和授权AllowOverrideNone//不使用“.htaccess文件”AuthTypeBasic//认证类型为基本认证AuthName"thisisatestdirectory.pleaselogin:" //设置认证领域说明AuthUserFile/etc/httpd/mypasswd//指定认证口令文件的所在目录和名称Requirevalid-user//授权给认证口令文件中的所有用户.htaccess文件实现防盗链RewriteEngineon RewriteCond%{HTTP_REFERER}!^$ RewriteCond%{HTTP_REFERER}!^http://(www.)?mydomain.com/.*$[NC] RewriteRule.(gif&line;jpg)$http://www.mydomain.com/替代名[R,L] .htaccess文件禁止目录列表<Files~".*">Orderallow,denyDenyfromall</Files>Options-Indexes //此段为功能代码.htaccess文件配置默认文档<Files~"^.(htaccess|htpasswd)$">denyfromall</Files>DirectoryIndexindex.htmlindex.php //此段为功能代码orderdeny,allow推荐阅读:iis安全防盗链设置
㈨ .htaccess如何禁止访问某个文件夹
.htaccess如何禁止访问某个文件夹的方法如下:最简单方法,在所要禁止的目录中的.htaccess文件中添加一下两行代码。 order allow,deny deny from all(可以把all换成某一ip地址)相关介绍:.htaccess文件,又叫分布式配置文件,它提供了野缺备针对每个目录改变配置的方法,可以在一个特定的文档目录中放置一个包含指令的文件,以达到控制此目录及其子目录的目的。通 常.htaccess文件的使用配置语法和主配置文件一样,但是做为用户,当然所能使用的命令是受到限制的。系统管理员可以通过配置apache的AllowOverride指令来配置决 定.htaccess文件中颂毁哪些指令有效。如果在文档的子目录中还设置了.htaccess文件的话,子目录中的指令将扮扰会覆盖掉上级目录或者主服务器配置文件中的指令。此应用尤其是ISP在 同一个机器上运行了多个用户站点,而又希望用户可以自己改变配置的情况下特别有意义。
㈩ apache的.htaccess配置文件怎么用
可以进行服务器的设置,最常用的是自定义的“404”页面。目录列表是否显示,限制IP访问,设置访问密码等等。。。具体怎么使用你就查查Apache的用户手册吧。很简单。