如何编写和设置.htaccess文件

通过创建.htaccess文件,可以实现身份验证,传输和限制等特殊功能

在网站上设置“.htaccess”的设置文件时,访问限制,用户认证,重定向(自动转发),将404和503等错误页面更改为特殊原始内容可以实现设置和定制。 如何编写.htaccess文件非常简单这个“.htaccess”文件的实体是一个文本文件。因此,您可以在Windows“记事本”中查看和编辑内容,如下所示。尽管角色很特殊,但它可以像HTML和CSS一样使用文本编辑器来处理,因此创建文件和编写配置非常容易。

使用一个“.htaccess”文件可以实现各种特殊功能。内容只是文本数据

安装即可(设置生效描述)的环境和条件特殊设置的“的.htaccess”文件,它已被使用的软件叫阿帕奇(Apache)的作为Web服务器,服务器管理员”的.htaccess如果允许文件安装,则可以使用它。它主要在租赁服务器上提供。空间和供应商提供的,在很多情况不在免费的网络空间可用,但有时可即使有一些功能限制。请查看帮助文档等,看看它是否在您的服务器上可用。

服务器帮助中描述了“.htaccess”文件中的各种设置是否可用

如何使用.htaccess文件

使用此“.htaccess”文件的具体设置方法也在以下文章中进行了说明。另请参阅这些文章以及本文的评论内容(=如何编写“.htaccess”文件本身和安装方法)。 您可以添加提示输入ID和密码的用户身份验证功能

询问ID和密码

使用“.htaccess”文件,您可以添加用户身份验证功能,提示您输入特定的ID和密码,以访问您网站上的特定页面和目录。如果使用此身份验证功能,则可以轻松创建限制查看者的成员角等。文章“ 如何使用基本身份验证限制访问(基本身份验证) ”

自动传输(重定向)到指定的URL

自动转移到指定的URL

重新定位网站或更改网站结构时,自动将旧URL的访问权限立即转移到新URL。使用“.htaccess”文件仅使用单行描述也可以容易地实现这种自动转发(重定向)处理。文章“ 如何自动转移(转移/重定向)到搬迁目的地 ”

使用PC和智能手机等指定条件切换内容

根据访问环境排序

如果使用“.htaccess”文件,还可以向重定向添加条件。例如,您还可以创建一个功能,根据查看环境自动切换内容,例如自动将智能手机用户定向到仅限智能手机的网站。文章“ 如何自动排序PC版和智能手机版网站 ”

自定义未找到的错误消息到您自己的内容

制作错误页面的独特内容

错了,当你在服务器拥挤指定URL是,各种错误信息,如“503服务暂时不可用”错误“404 Not Found”错误“的.htaccess”文件到您自己的内容,如果您使用它将被替换。文章“ 如何更改(自定义)错误页面,如找不到 ”

阻止访问特定目录和文件

拒绝访问特定文件

有时您可能不得不在网络上放置您不希望任何人访问的文件,例如存储各种工具系统的目录。即使在这种情况下,您也可以使用“.htaccess”文件拒绝仅访问指定的文件。文章“ 如何拒绝访问指定文件 ”

您可以阻止我自己或利益相关者以外的任何人访问

拒绝第三方访问

如果您只能从家中,学校,公司内等特定位置查看,只能由您使用的工具的登录屏幕或仅在特定组中使用的系统,则可以提高安全性我会的。使用“.htaccess”文件也可以轻松实现这种有限的访问限制。文章“ 如何拒绝他人访问登录页面 ”

.htaccess文件的各种功能不仅可以实现写其他的,不是在写作的时候单篇文章,但你还可以设置如下。

制作“index.html”以外的默认文件名(※下一页介绍)如果没有默认文件,则显示文件列表(或不显示)启用(或禁用)CGI和SSI使动态生成的页面看起来像静态页面

如何制作.htaccess文件·安装方法·故障排除方法

这个时候,如何使“的.htaccess”文件本身,写作例如,安装方法,该如何处理,如果你得到一个错误,我们将介绍以下顺序。

如何制作.htaccess文件

使用文本编辑器创建“.htaccess”文件

让我们立即创建一个“.htaccess”文件。制作它的方法非常简单。这两个必要步骤如下。

使用文本编辑器描述所需的设置。将其另存为特殊文件名“.htaccess”。就是这样。这很简单。由力来说,是关于或有必要担心字符代码或换行代码的情况下,因为以点符号开头的文件名“的.htaccess”特别是或有在处理故障,不能正常工作。稍后还将详细解释这些要点。【目录】

编写.htaccess文件所需的准备工作只是文本编辑器如何编写.htaccess文件:(示例)更改默认文件设置保存为“.htaccess”文件名(注意)保存时请注意不要自动添加扩展名(注意)如果无法创建头部以“。”开头的文件(点符号)

编写.htaccess文件所需的准备工作只是文本编辑器

可以使用文本编辑器创建“.Htaccess”文件

由于“.htaccess”文件是文本文件,因此您可以使用文本编辑器创建它。如图所示,它可以使用Windows中标准安装的“Notepad”创建。如果您有一个通常用于描述HTML或CSS的文本编辑器,则可以使用它。

如何编写.htaccess文件:(示例)更改默认文件设置

如上一页所述,“。htaccess”文件有很多用途,根据目的需要不同的描述。根据要在“.htaccess”文件中描述的具体内容要实现的内容,请参考前一页介绍的相关文章等。但是,除非有一个具体的写入方法的例子,否则不可能尝试创建“.htaccess”文件,所以这里我们将解释自定义以更改默认文件的名称。 示例:将默认文件名设置为“index.html”以外的名称

如果省略文件名,则与指定index.html时相同

在许多网站上,如果您访问以“/”符号结尾的URL而未指定文件名,则您将访问名为index.html的文件。例如,如果您访问URL http://www.example.com/fdr/,实际上可以使用URL http://www.example.com/fdr/index.html访问的文件内容将被返回。此index.html称为默认文件。在这里,您可以通过将以下行添加到“.htaccess”文件来更改默认文件名。

DirectoryIndex toppage.php

在上述情况下,当指定以“/”符号结尾的URL时,将使用名为toppage.php的文件而不是index.html来显示。由于只能指定一个默认文件名,

DirectoryIndex frontpage.php headpage.shtml index.html

如果列出如上所述由单字节空格分隔的多个文件名,则可以按优先级顺序指定多个候选项。在这种情况下,当指定以“/”符号结尾的URL时,操作如下。

如果有一个frontpage.php文件,它将被显示,即使没有它,如果有headpage.shtml文件,它将被显示,即使没有它,也会显示index.html文件(如果有)。如果1到3都不可用,将显示文件列表或发生“403 Forbidden”错误。取决于服务器的设置。您还可以使用“.htaccess”文件指定显示文件列表或显示错误的设置本身,但此处省略该方法。

另存为.htaccess文件名

将文件名保存为“.htaccess”

现在,如果您可以描述文件的内容,请将其另存为“.htaccess”文件名。请注意以下三点。(1)文件名为“.htaccess”,“。htaccess”以点符号开头。没有文件扩展名。小心不要忘记前导“。”(点符号)。(2)确保在末尾插入换行符确保在“.htaccess”文件的末尾插入换行符。除非最后有一条新线,否则它可能无法移动。为了防止编辑错误,建议在末尾适当包含2到3个空白行。(3)以文本格式保存“.htaccess”文件必须以纯文本格式保存,不带任何格式信息。使用可以添加表单信息的编辑器创建时请小心。*如果您在使用时出错,请同时注意字符代码和换行代码。特别是当您将字符代码保存为“UTF - 8”时,最好不要添加BOM。有关详细信息,请参阅最后一页。

(注意)保存时请注意不要自动添加扩展名

要使用Windows附带的“记事本”进行保存,请在保存之前将保存对话框底部显示的“文件类型”列更改为“所有文件”。如果你离开“文本文档”的标准,它将被添加扩展名为“.txt”的文件名末尾自动“的.htaccess .TXT将被保存在一个文件名为”。*当Windows设置为不显示文件扩展名(标准设置如此)时,很难注意到,所以要小心。

注意不要在名称“.htaccess”中添加扩展名

根据您的环境和软件,您可能无法创建文件名以“。”开头的文件名(点符号)。例如,在以下情况中。 Windows:

无法更改为以点符号开头的文件名(Windows)

如果Windows设置为显示文件扩展名,如果您尝试将现有文件的名称更改为以“。”符号开头的名称,您将看到错误“请输入文件名”并更改名称我不能。*如果设置为不显示文件扩展名,即使可以将其更改为以“。”符号开头的名称,也可以添加额外的文件扩展名。

对于MacOS:

以点开头的名称的警告(MacOS)保留给系统

在MacOS中,以“。”开头的文件名被警告它们是为系统使用而保留的。可以按原样创建文件,但文件本身是隐藏和消失的。

在的情况下,上述,暂时保持与扩展,如果你没有在绝对“的.htaccess”让与文件名的文件,如果你不想在某些情况下这样做,暂时‘的.htaccess .TXT诸如’即使用适当的名称保存它也没有问题。从再上传到文件名的服务器上,这将是使用FTP软件的功能在服务器上的文件的文件名可以更改为“的.htaccess”。现在,一旦有了“.htaccess”文件,最后将其上传到Web服务器。“.htaccess”文件会影响设置范围,具体取决于上载位置。请注意位置并将其上传,以便仅对所需范围产生效果。

建立.htaccess文件(确定上传位置)

现在,如果您可以在上一页的过程中创建“.htaccess”文件,请将其上载到Web服务器上。上传方法没有问题,与HTML或CSS文件(FTP软件等)相同。上载目标位置取决于您要应用设置的范围。请注意,“。htaccess”文件中描述的设置的有效范围是放置文件的目录(文件夹)以及它下面的所有子目录。 如果要为整个网站启用它:

将其放在顶级目录中使其对整个站点有效

如果要启用整个网站的设置,请在顶级目录(=首页)中设置“.htaccess”文件。

如果只想为某些目录启用,请执行以下操作:

仅对放置的目录和较低目录有效

如果要为特定目录及其子目录启用它,请将其放在该范围内的最高目录中。如右图所示,如果你将它放在apple目录中,它将在它下面的jam·juice·pie目录中有效。但是,在orange目录中(因为它不是分层的父子关系),它将无效。

可以为每个目录进行不同的设置:

您还可以为每个目录放置不同的.htaccess文件

如果要为每个目录设置不同的设置,请在每个目录中安装一个“.htaccess”文件。如果右边的图中,“组被安装在果酱目录”(红色)在果酱目录中才启用,“组被安装在馅饼目录”(蓝色)只在馅饼目录已启用。

父(父)目录的设置也对lower(子)目录有效:

上层次结构中的.htaccess文件也同时应用

如果上层目录中有另一个“.htaccess”文件,则同时也应用设置内容。如果找到冲突的设置,则较低目录中的设置优先。在右图卡纸目录,有效地“卡在目录本身安装的.htaccess的内容”(红色),两者的上部(蓝色)“的htaccess的,它安装在苹果目录的内容”的设置它会变成。在两个内容之间发生冲突的情况下,优先级是“安装在jam目录中的.htaccess的内容”(红色)。

这样就完成了“.htaccess”文件的创建和安装。请与浏览器确认实际检查是否出现了所需的效果。如果“.htaccess”文件的内容出现问题,则无论您访问的目标范围内的哪个页面,都将显示“500 Internal Server Error”错误。此外,即使您安装“.htaccess”文件,它也可能无法正常工作。

在由于.htaccess的影响而导致内部服务器错误的情况下

由于在网站上传了“.htaccess”文件,因此您浏览的每个页面都可能会显示“500 Internal Server Error”错误。在这种情况下,“。htaccess”文件的描述内容可能不正确,或者包括不允许的描述(在该服务器上)。

由于安装“.htaccess”文件而在所有页面上显示内部服务器错误的事例

如果此“.htaccess”文件中存在错误,则无法查看有效范围内的所有页面。在这种情况下,请仔细检查下面列出的要点。 检查描述性字符串(如拼写或空白拼写)最常见的是拼写错误。让我们检查“ErrorDocument”之类的拼写是否错误或者是否采用了括号对应等。另请注意外观无法确定的空白字符。对于空格字符,您需要使用单字节空格或制表符,不能使用双字节空格。 确认保存格式请注意是否保存了添加了额外信息,如富文本格式。该文件必须是文本格式(纯文本)。 确认字符代码(如果使用UTF-8,则为“无BOM”)

如果使用UTF-8保存,请不要添加“BOM”

如果“.htaccess”文件仅包含一个字节ASCII字符(=字母数字字符),则字符代码可以是SHIFT-JIS,EUC-JP或UTF-8。内容是一样的。但是,使用UTF-8创建时最好不要添加BOM(字节顺序标记)。如果已连接,请尝试再次保存而不使用BOM。还有一个编辑器说没有BOM的UTF-8代码为“ UTF-8N”。

对于“记事本”,将字符代码设置为“ANSI”

*如果在Windows附带的“记事本”中保存时选择“UTF-8”进行字符代码选择,则会毫无疑问地添加BOM。使用“记事本”创建时,让我们将字符代码选择保存为“ANSI”,如图所示。或者,请使用可以指定是否存在BOM的文本编辑器,例如EmEditor。此外,如果“.htaccess”文件中描述的URL包含日语字符,请检查它是否使用“%”符号进行编码。不包括日文字符(ASCII字符以外的字符)是安全的。 确认换行代码

保存时指定换行代码(示例在EmEditor中)

在Windows环境中,“CR + LF”通常用作换行代码。在旧的MacOS环境中使用了“CR”。但是,根据服务器的不同,必须将换行代码更改为“LF”,这在某些情况下通常在UNIX环境中使用。请在文本编辑器中将其设置为“LF”,它可以指定换行代码并再次尝试保存。

确认服务器端功能限制尽管在“.htaccess”文件的规范中没有错误,但服务器管理员可能禁止使用某些设置。即使包含禁止的描述,它也会变为内部服务器错误。即使您被允许使用“.htaccess”,也请查看服务器的帮助文档等,以确定是否禁止您描述您要使用的某些设置。

如果没有错误也没有效果

“.htaccess”文件不能始终在任何服务器上使用。如果服务器管理员禁止使用(=如果它无效),则根本不能使用它。在这种情况下,即使安装也没有显示错误消息,只是没有任何反应。如果它是租赁服务器,则“.htaccess”文件最常可用,但它通常在免费服务器或提供商提供的空间中不可用。如果在服务器的设置中禁止使用“.htaccess”文件本身,则别无选择,只能放弃。“.htaccess”文件是Apache(Apache)Web服务器的一个功能。它不能在Apache以外的Web服务器上使用,例如Microsoft的“IIS”。

使用.htaccess文件,可以实现身份验证和限制等特殊功能

这一次,我向您展示了如何创建和安装“.htaccess”文件,该文件是Web服务器Apache配置文件。有关使用“.htaccess”文件的特定技术,请参阅下面的相关文章。

  • 发表于:
  • 原文链接:https://kuaibao.qq.com/s/20181105A02LD900?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券