最完的htaccess文件用法收集整理

关于“最完的htaccess文件用法收集整理”的完整攻略,我将从以下几个方面进行详细讲解:

  1. htaccess概述及作用
  2. htaccess文件编写格式
  3. htaccess文件的常用用法收集整理
  4. 示例说明

接下来,我会一一对以上几点进行详细讲解。

1. htaccess概述及作用

.htaccess 文件(全称为“hypertext access”)是一种配置文件,它利用 Apache HTTP Server 中的 mod_rewrite、mod_alias 等模块来实现 URL 重写、缓存控制、跨域访问、防盗链等功能。

.htaccess 文件是一个隐藏的纯文本文件,通常位于网站根目录下。它可以配置指定目录及其子目录下的文件的访问规则、权限等信息,可以覆盖服务器默认配置,实现更灵活的配置控制。

2. htaccess文件编写格式

.htaccess 文件的编写格式需要注意以下几点:

  1. 文件名为.htaccess,前面有一个点,不能包含文件名后缀。
  2. 文件编码为UTF-8无BOM格式,不能使用特殊的换行符。
  3. htaccess文件使用一个空格或TAB键缩进,不能使用多余的空格。
  4. 每个指令以一个空行分隔。
  5. 号为注释符号,#后的内容为注释内容,不生效。

3. htaccess文件的常用用法收集整理

3.1 URL 重写

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

以上代码是一种典型的 URL 重写规则。它的作用是将所有经过服务器的请求(除非请求文件或目录存在)重定向到 index.php 文件并且作为 $_GET['url'] 参数传递。例如:http://example.com/some/path 会关联为 http://example.com/index.php?url=some/path

3.2 静态资源缓存控制

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresDefault "access plus 30 seconds"
    ExpiresByType image/jpeg "access plus 1 year"
    ExpiresByType image/png "access plus 1 year"
    ExpiresByType image/gif "access plus 1 year"
    ExpiresByType text/css "access plus 1 month"
    ExpiresByType text/javascript "access plus 1 month"
    ExpiresByType application/javascript "access plus 1 month"
</IfModule>

以上代码的作用是设置浏览器对静态资源的缓存时间。例如:如果浏览器已缓存了一张JPEG图片并且它的访问时间不超过1年,则浏览器重新访问该图片时会直接从缓存中读取。

4. 示例说明

以下是一个完整的.htaccess文件,其中的规则对社交媒体进行防盗链:

# 防盗链设置
RewriteEngine on
# 允许指定来源网站访问
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example.com [NC]
# 图片、 JavaScript、CSS文件防盗链:阻止除指定网站以外的所有站点引用文件 
RewriteCond %{REQUEST_URI}  \.(jpeg|jpg|gif|png|bmp)$ [NC,OR]
RewriteCond %{REQUEST_URI}  \.(js|css)$ [NC]
RewriteRule .* - [F]

以上.htaccess文件会将除了自己网站以外的所有站点引用的 CSS、 JavaScript、图片等资源文件,全部拒之门外。

希望以上的讲解能对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:最完的htaccess文件用法收集整理 - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • CSS3实用方法总结(推荐)

    CSS3实用方法总结(推荐) 1. 布局 1.1 弹性盒模型 弹性盒模型可以对一个元素的子元素进行自适应布局,更加灵活,可以实现传统布局实现不了的效果。常用的几个属性有: display: flex:将元素设为弹性容器 flex-direction:设置弹性容器的主轴方向 justify-content:在弹性容器中对齐元素 align-items:在弹性容…

    css 2023年6月9日
    00
  • 详解CSS(层叠样式表)渐进增强

    CSS(层叠样式表)是一种用于描述网页样式的语言,可以用于控制网页的布局、颜色、字体等方面。渐进增强是一种设计理念,即在设计网页时,应该先考虑基本功能的实现,然后再逐步增加高级功能。以下是关于详解CSS(层叠样式表)渐进增强的完整攻略。 步骤一:基本样式 首先,需要定义网页的基本样式,包括布局、颜色、字体等方面。以下是一个示例: body { font-fa…

    css 2023年5月18日
    00
  • HTML5实现自带进度条和滑块滑杆效果

    这里是关于如何在HTML5中实现自带进度条和滑块滑杆效果的完整攻略。 使用HTML5自带的input元素 在HTML5中,input元素有多种类型,其中包括range和progress类型,这两种类型可以用于实现自带进度条和滑块滑杆效果。 实现自带进度条 要实现自带进度条,可以使用progress类型的input元素。通过设置value属性的值,可以控制进度…

    css 2023年6月10日
    00
  • 虚拟主机cPanel面板查看服务器的访问日志

    下面是虚拟主机cPanel面板查看服务器的访问日志的完整攻略: 步骤一:登录cPanel面板 首先,打开浏览器,输入你的网站域名后加上“/cpanel”,如“http://example.com/cpanel”,进入cPanel面板登录界面。输入正确的用户名和密码,然后点击“登录”。 步骤二:进入日志分析页面 登录cPanel后,点击“日志”(位于“文件”下…

    css 2023年6月10日
    00
  • 前端编码规范(4)—— CSS 和 Sass (SCSS) 开发规范

    下面是关于“前端编码规范(4)—— CSS 和 Sass (SCSS) 开发规范”的完整攻略。 目录 命名规范 代码格式 注释规范 SCSS 规范 示例说明 命名规范 选择器和属性命名使用小写字母 : 所有的选择器(class和id)和属性名都应当使用小写字母。 共同前缀 : 对于属于同一组件或者定制化组件的样式,使用共同的前缀,以区别于其他样式。 中划线(…

    css 2023年6月9日
    00
  • CSS haslayout 彻底了解

    CSS haslayout 彻底了解 haslayout 是一个针对IE浏览器的一个布局属性,用于处理IE6和IE7浏览器在渲染元素时的一些问题,包括了一些布局的特性以及规则。 haslayout属性的作用 在讲解haslayout属性的具体含义之前,我们先来了解一下haslayout属性的作用: 解决IE6下的双倍margin问题。 解决IE6和IE7下的…

    css 2023年6月10日
    00
  • css核心基础总结篇(推荐)

    CSS核心基础总结篇 CSS是前端开发中不可或缺的一部分,用于定义网页的样式和布局。以下是CSS的核心基础知识和学习总结: CSS基础 CSS选择器 CSS选择器用于选择需要应用样式的HTML元素,例如: p { color: red; } CSS属性 CSS属性用于定义HTML元素的样式,例如: p { color: red; } CSS样式表 CSS样式…

    css 2023年5月18日
    00
  • css控制文字前的小图标具体写法

    CSS可以通过以下方式为文字前的小图标设置样式: 使用伪元素before或after 可以使用伪元素before或after在元素的内容前或后添加小图标,并通过CSS样式来控制该小图标的样式。为了将伪元素作为元素的内容添加到页面上,需要为伪元素设置content属性,并为伪元素设置display属性以使其显示出来。以下是一个基本的示例代码: /* 在文字前添…

    css 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部