关注分享主机优惠活动
国内外VPS云服务器

如何在 Apache 中启用 .htaccess 和 .htaccess

今天我在本地使用.htaccess调试PHP程序,.htaccess默认是启用的。 我找到了一个可行的方法,可以在线启用.htaccess,供朋友们学习。 (我的启用方法不起作用。我搜索了AllowOverride None并将所有内容替换为AllowOverride All。不知道为什么。O(∩_∩)O~更改httpd.conf后我忘记了请重新启动Apache而不这样做。1.如何创建本地APACHE .htaccess 如何创建本地APACHE 服务器“.htaccess”? 实际上,您需要做的就是修改 Apache 的 httpd.conf 设置来创建 APACHE.htaccess。 我们来看看如何打开httpd.conf(在哪里?在APACHE目录和CONF目录中)。 在文本编辑器中打开后,找到(1)OptionsFollowSymLinksAllowOverrideNone并将其更改为OptionsFollowSymLinksAllowOverrideAll。 (2)删除以下注释LoadModule。 rewrite_module module/mod_rewrite.so 2. Apache(或“分布式配置”)中编写 htaccess 的方式是通过配置目录,即将包含文件的文件放置在特定的文档目录中。 或者作用于该目录及其子目录的多个指令。 因此,***Apache的AllowOverride指令限制了可以设置的命令。 子目录中的命令覆盖更高级别目录或主机配置中的命令。 .htaccess必须以ASCII模式上传,其权限最好设置为644。 错误文档位置的常见客户端请求错误返回代码: 401. 需要授权 403 禁止 404 未找到 405 方法不允许 408 请求超时 411 需要内容长度 412 前提条件失败 413 请求实体太长 414 请求 URI 太长 415 不支持的媒体类型 一般服务器错误 返回代码:500 内部服务器错误 .htaccess 使用创建错误提醒页面指定预配置。 通常,您会设置特殊目录,例如错误放置页面。 然后将以下说明添加到您的 .htaccess。 ErrorDocument 404 /errors/notfound.html ErrorDocument 500 /errors/internalerror.html 每行一条指令。 上面第一个命令的意思是,在 404 的情况下,显示找到的文档的页面是 /errors 目录中的 notfound.html 页面。 不难看出,语法模式为ErrorDocument错误代码/目录名/名称。 如果您的扩展程序很少提示您,则无需创建特殊页面并将 HTML 数字直接添加到命令中,如以下示例所示。 ErrorDocument 401 “您有访问此页面的权限。请放弃!” 文档访问的密码保护 要使用.htaccess 设置对目录中文档的访问权限以及相应的密码,首先创建一个 .htpasswd 生成文本文档。 示例:zheng:y4E7Ep8e7EYV 这里的密码是加密的。 找到一些工具将密码加密为 .htaccess 编码。 我们建议您不要将此文档放在 www 目录中。 建议将 www 根目录放置在文档之外。 这样更安全。 使用认证文档将以下指令添加到.htaccess:AuthUserFile .htpasswd Directory AuthGroupFile /dev/null (授权访问目录) AuthName EnterPassword AuthType Basic (授权类型) 是的,所有者必须考虑一切。 ——Lei Feng require user wsabstract (允许访问。我想要表中允许的所有内容,需要 valid-user) 括号中添加的注释用于学习是具体的,注意它拒绝来自 IP 的访问。 我不希望某些政府机构访问我的网站。 是的,在.htaccess 中添加和排除部门的IP。 示例:命令授予、拒绝 拒绝来自 210.10.56.32 拒绝来自 219.5.45。 允许来自所有 第二行拒绝特定 IP,第三行拒绝特定 IP 范围。 还想拒绝 219.5.45.0 到 219.2.45.255 之间的人?只需使用拒绝全部即可。 除了使用IP外,还可以使用域名进行配置。 保护 .htaccess 文档 当您使用 .htaccess 对目录进行密码保护时,该目录包含密码的路径。 出于安全原因,您应该保护您的 .htaccess 不被其他人查看。 但是,您也可以使用其他方法来执行此操作,例如文档权限。 但是,您也可以使用 .htaccess 本身来完成此操作。 只需添加以下指令: 允许、拒绝 拒绝所有 URL 重定向 您可以重新计划、迁移文档或更改目录。 在这种情况下,来自搜索引擎和其他链接的访问可能会产生误导。 在这种情况下,您可以使用以下命令自动将旧 URL 重定向到新 URL: 使用“重定向/旧目录/旧文档名称”重定向新文档或整个目录。 将旧目录重定向到新目录,使其成为默认主页。 默认主页名称通常包括default、index等。 没有别的了。,有些目录没有默认名称,而是有特定名称,例如 pmwiki 的 pmwiki.php。 在这种情况下,记住名称并访问它就很麻烦。 在 .htaccess 中轻松设置新的默认名称。 DirectoryIndex 新的默认名称也以多个形式列出,顺序表示其中的优先级。 例如: DirectoryIndex filename.htmlindex.cgiindex.pldefault.htm 与热链接到其他人的网页或文档不同,您还可以使用 htaccess 命令进行热链接。 步骤如下: RewriteCond 上的 RewriteEngine %{ HTTP_REFERER } !^$ RewriteCond %{ HTTP_REFERER } !^http://(www.)?mydomain.com/.*$ [NC] RewriteRule .(gif&line;jpg) $ -[F]如果您认为在其他人的页面上打开天窗不是一个好主意,请改用天窗。 RewriteCond %{ HTTP_REFERER } !^$ RewriteCond %{ HTTP_REFERER } !^http://(www.)?mydomain.com/.* $ [NC] RewriteRule .(gif&line;jpg)$ http://www. com/alternative name [R,L] 其他补充:在我们解释如何配置 Apache 以支持 .htaccess 之前 使用文件时,首先声明它。 使用 .htaccess 文件会降低 httpd 服务器性能。 配置:找到 Apache 的 httpd.conf 配置文件并在编辑器中打开它。 // FollowSymL 的搜索选项inks AllowOverride None // 改为Options FollowSymLinks AllowOverride All //就是这样 /* 如果需要使用.htaccess以外的文件名,使用AccessFileName命令即可更改。 那。 例如,如果您需要使用.config,您可以在服务器配置文件中配置它,如下所示: */ AccessFileName .config .htaccess 文件通常使用与主配置文件相同的配置语法。 AllowOverride 指令确定 .htaccess 文件中的哪些指令对每个类别有效。 何时(以及何时不)使用 .htaccess 文件 一般来说,避免使用 .htaccess 文件,除非您有权访问主配置文件。 一个常见的误解是用户身份验证只能通过 .htaccess 文件来实现。 其实不是。 这是完全可能的,也是在主配置文件中写入用户认证的好方法。 当内容提供商需要更改特定目录的服务器配置而无需 root 访问权限时,应使用 .htaccess 文件。 如果服务器管理员不希望频繁更改配置,特别是如果 ISP 在同一台计算机上运行多个用户站点并希望用户能够自己更改配置,则 .htaccess 文件可以使用它来允许用户自己更改配置。 。 尽管如此,您通常应该尽可能避免使用 .htaccess 文件。 您想要放置在 .htaccess 文件中的设置可以放置在主配置文件的一部分中,这样效率更高。 避免使用 .htaccess 文件有两个主要原因。 首先是性能。 如果使用AllowOverride启用.htaccess文件,Apache必须在所有目录中查找.htaccess文件,因此启用.htaccess导致性能下降。 此外,每个请求都必须读取一次 .htaccess 文件。 Apache 还需要在所有父目录中查找 .htaccess 文件才能使所有有效指令发挥作用,因此如果请求 /ctusky/ctu/sky 中的页面,Apache 将需要查找该文件:/.htaccess/ctusky/。 htaccess /ctusky/ctu/.htaccess /ctusky/ctu/sky/.htaccess 共 4 个 访问一个附加文件。 这就是为什么我们在本文开头说即使这些文件不存在也会影响服务器性能。 第二是安全。 这允许用户自行修改服务器配置,并可能导致意外的更改,因此请仔细考虑是否应该授予用户此类权限。

未经允许不得转载:主机频道 » 如何在 Apache 中启用 .htaccess 和 .htaccess

评论 抢沙发

评论前必须登录!