Free.fr个人.htaccess页面

此文章采用的在线翻译,有些不能保证翻译的准确,请谅解!

我们不时听到一个叫做“the .htaccess ”的东西(例如,发音为“point ax té axis esse”)。它到底是干什么用的?我需要一个?你应该在里面放什么?我们可以在里面放什么?

一般的

简短版本:.htaccess服务器“使用”这些文件来个性化对网页的访问。

长版:

文件.htaccess(或“分布式配置文件”)提供了一种在每个目录级别修改服务器配置的方法。包含一个或多个配置指令的文件被放置在特定的文档目录中,其指令适用于该目录及其所有子目录。

为了避免在某些配置中通过 FTP 传输问题,建议以换行符结束文件。

在免费托管上,允许的指令是有限的,并且没有正式记录,这使网站管理员的任务变得复杂。我在这里尝试尽可能详尽地列出清单。Apache Foundation 站点上提供了每个 Apache 指令的特定文档:Apache HTTP Server 版本 2.2 文档

所有指令Options都可以通过前面的指令添加或从 Apache 的初始配置中删除,+或者-根据需要。这些指令Options可以组合在一行中,用空格分隔(例如Options -Includes -Indexes +MultiViews)。

Free个人页面的.htaccess“最小”文件

此文件将放置在帐户的根目录下。它允许您为您的帐户最低限度地配置 Apache 服务器。


<IfDefine Free>
php 1
</IfDefine>
Options -Indexes

如果您的站点仅包含静态 html 页面(不使用 PHP),您可以使用这些指令来替换以前的指令,更适合您的情况(如果您使用服务器端包含,请删除指令-Includes):

Options -Indexes -ExecCGI -FollowSymLinks -Includes

最著名的功能是访问限制

使用.htaccess,可以禁止所有人访问站点或目录,或仅限制某些人访问。

为了限制访问(回想一下,在免费网站上,网站必须至少有网站的某个部分可供所有访问者免费访问),免费常见问题解答中给出了解释:页面的个性化(限制)。请注意,密码以纯文本形式存储在密码文件中:因此,该文件也应防止访问(deny from all.htaccess包含它的目录中)!

方法

可以通过一个或多个标识符/密码来限制对文件夹(及其子文件夹)的访问。

要插入的行.htaccess如下:

PerlSetVar AuthFile /chemin_du_dossier_depuis_la_racine_du_compte/.htpasswd
AuthName "Acces Restreint"
AuthType Basic
require valid-user

此文件将直接放在要保护的文件夹中。

然后有必要创建一个包含标识符/密码对(未加密)的文本文件,该文件将被命名为.htpasswd. 例如 :


administrateur:super_mot_de_passe
utilisateur:youpi

.htaccess可以将此文件放置在 Web 空间的任何位置,但如果将其放置在与要保护的目录不同的目录中,则会通过放置在内部创建另一个文件来保护它免受入侵deny from all,这将阻止访问文件夹(和子文件夹)。

可以设置更具体的限制:每个用户、IP 地址、域。您可以查看 Apache 文档)以获取所有信息。

有用的链接

还提供了其他功能:(参见“授权指令”)

可以强制使用 php 版本 5.1.3,php 1.htaccess.

index.<extension>也可以通过在 our 中添加提及Options -Indexesalways来禁止显示所有不包含文件的目录内容的详细信息,据.htaccess我所知,它不区分大小写(区分大小写,没有汽车,繁荣, 裂缝 ;-) )

.htaccess据我所知, Free 不允许其他常用功能。但是,如果我错了,我毫不怀疑确切的信息将有用地补充或替换已经存在的信息:-)

授权指南

php 1— 启用 PHP 5.1.3rc4-dev “自由风格”(默认为 PHP 4.4.3-dev)。如果站点仅包含静态 HTML 页面,则无需激活它。

Options Indexes— 启用 Apache 目录列表。如果前面带有-,则禁用此选项。该指令允许列出目录 ( Index Of /…/),即使不存在索引文件。出于安全原因,最好禁用此选项;403 Forbidden如果目录中没有文件,服务器将返回一个错误页面index.<extension>

Options MultiViews— 启用 Apache 的 MultiViews 功能。如果前面带有-,则禁用此选项。这个选项在 Apache 中默认是不启用的,所以你必须明确地启用它才能使用它。

Options ExecCGI— 启用 CGI/PHP 脚本的执行。如果前面带有-,则禁用此选项。仅对具有 PHP 脚本的站点有用。

Options IncludesNOEXEC— 允许包含文件(文件.shtml和 SSI),但禁止执行 PHP 脚本。如果前面带有-,则禁用此选项。仍然可以通过ScriptAlias. 如果ExecCGIIncludes被禁用,则启用此指令毫无意义,它将是多余的。

Options FollowSymLinks— 允许在目录及其子目录中搜索符号链接。如果前面带有-,则禁用此选项。

Options Includes— 允许文件包含。仅在具有 PHP 脚本的站点或使用 SSI 代码(文件.shtml)的文件的情况下有用。如果前面带有-,则禁用此选项。

模块的指令mod_autoindex,允许自定义Apache自生索引的显示,都支持。

AddType <type mime> .<extension associée>— 为文件类型定义特定的 mime 类型(例如AddType text/css .css)。

AddEncoding <type d'encodage> .<extension associée>— 定义文件类型的特定编码类型(例如AddEncoding gzip .gz)。

AddHandler <méthode> .<extension associée>— 定义处理文件类型的特定方法(例如AddHandler application/x-httpd-fastphp .html)。

AddCharset <charset> .<extension associée>— 定义特定的字符集来处理文件类型(例如AddCharset iso-8859-15 .html)。

AddLanguage <langue> .<extension associée>— 定义特定于文件类型的语言(例如AddLanguage fr .html)。

LanguagePriority <langue(s)>— 定义站点上语言的优先级(例如LanguagePriority en fr de。也就是说,对于有多种语言可用的相同特定资源,如果没有偏好,服务器将返回与定义的第一个“主要”语言相关联的资源由访问者在请求期间指示。

DefaultLanguage <langue>— 为服务器上的所有文本文件定义一个单一的“主要”语言(例如DefaultLanguage fr)。对于某些文件,可以通过AddLanguage. 它只能用于指定一种语言。

AddDefaultCharset <charset>— 为服务器上的所有文本文件定义一个字符集(例如AddDefaultCharset utf-8)。对于某些文件,可以通过AddCharset. 定义字符集有助于加快浏览器中的呈现时间。

指令Order Allow及其Deny各种应用是允许的。

指令Satisfy All及其Any各种应用是允许的。

可以在 Free 的个人页面上使用指令,但是服务器每个文件<Files>…</Files>只接受一对标签可以使用正则表达式或文件名。标签必须采用以下格式:<Files>…</Files>.htaccess

<Files ~ "^*\.(…)">
Directives
</Files>

在哪里

<Files "nom-du-fichier.<extension>">
Directives
</Files>

标签<IfModule>…</IfModule><IfDefine>…</IfDefine>是可能的。例如 :

<IfModule mod_<nom du module>.c>
Directives
</IfModule>

在哪里

<IfDefine Free>
php 1
</IfDefine>

重定向

可以通过 free 个人页面上的文件从一个 URL 重定向到另一个 URL .htaccess,以指定文件夹已移动、URL 不再存在或已被移动…… Alexandre Alapetite 的网站上提供了一个非常好的教程。

从根目录重定向到子文件夹或页面

重定向到站点目录,FAQ再次:自动重定向到目录

将访问者自动重定向到站点的子文件夹(或特定页面)的最佳方式是通过 Apache。这是方法:

RedirectMatch permanent ^/$ http://monsite.free.fr/votre-sous-dossier/

有用的链接

自定义错误页面

可以使用该指令ErrorDocument自定义访问者收到的错误页面。这里有些例子 :

ErrorDocument 410 /detruit.php
ErrorDocument 500 "Désolé, script craché... pas de chance !
ErrorDocument 403 http://monsite.free.fr/pas-trouve
ErrorDocument 404 /erreur/perdu.html
ErrorDocument 401 /inscription/comment-sinscrire.html

使用的语法是:ErrorDocument <code-à-3-chiffres> <action>其中三位代码表示客户端收到的错误代码(400 到 499 和 500 到 599),并且操作可以指定:

  1. 要显示的消息。该消息必须以引号 ( ") 开头。显示同一行上所有前面带引号的内容。
  2. 指向外部服务器的 URL,将重定向到该服务器。
  3. 将进行重定向的本地 URL。

要替换错误页面,它总是在常见问题解答中:自定义错误页面

附加信息:如何.htaccess防止外部访问

通常,Free 服务器的默认配置会.htaccess防止阅读,这意味着尝试阅读的聪明人http://votresite.free.fr/.htaccess将被拒绝,并且会以他为代价。但最好不要信任默认配置,并.htaccess通过在以下内容中明确保护它.htaccess ...

<Files ".ht*">
Order allow,deny
Deny from all
Satisfy all
</Files>

在 Free 中包含或排除特定于服务器的指令

通过使用条件标签<IfDefine></IfDefine>,您可以将特定于服务器的指令添加到 Free:

<IfDefine Free>
php 1
</IfDefine>

要从免费服务器上的配置中排除指令:

<IfDefine !Free>
AddType application/x-httpd-php5 .php
</IfDefine>

文件的有用链接和资源.htaccess


发表评论 / Comment

提示:本文章评论功能已关闭