请记住.htaccess文件将采取隐蔽格式。
没有人可以通过URL直接看到它。

.htaccess文件有很多用场。
在这里,我将谈论创建它们及其用场。

创建.htaccess文件

打开任何文本编辑器并利用名称保存文件.htaccess。
mod_rewrite在Apache Web做事器配置中的php.ini文件中启用扩展。

php开启htaccess若何有用地应用htaccess文件 RESTful API

用于.htaccess

1.禁用目录列表

如果要禁用文件夹文件列表,请包括以下代码

#禁用目录列表

Options All –Indexes

2.缺点页面

您可以为特定缺点设置缺点页面。

示例:

errorDocument 400 http://www.yourdomain.com/error.html

errorDocument 401 http://www.yourdomain.com/error.html

errorDocument 404 http://www.yourdomain.com/error.html

errorDocument 500 http://www.yourdomain.com/error.html

如果要在Apache做事器中启用“重写规则”,则必须编写:RewriteEngine on

如果要关闭此规则,请将值变动为关闭。

RewriteEngine on

3.域重定向

要将yourdomain.com永久重定向到www.yourdomain.com,请添加以下代码:

RewriteCond%{HTTP_HOST} ^ yourdomain.com

RewriteRule(。
)http://www.yourdomain.com / $ 1 [R = 301,L]

4.子域重定向

您还可以实行子文件重定向映射到该文件夹。
这里www.yourdomain.com正在连接到该 website_folder 文件夹。

RewriteCond%{HTTP_HOST} ^ www \ .yourdomain \ .com $

RewriteCond%{REQUEST_URI}!
^ / website_folder /

RewriteRule(。
)/ website_folder / $ 1

这里subdomain.yourdomain.com正在连接到该 subdomain_folder 文件夹。

RewriteCond%{HTTP_HOST} ^ subdomain \ .yourdomain \ .com $

RewriteCond%{REQUEST_URI}!
^ / subdomain_folder /

RewriteRule(。
)/ subdomain_folder / $ 1

5.旧域重定向

用于将旧域(old.com)重定向到新域(new.com)的.htaccess代码。

RewriteCond%{HTTP_HOST} ^ old.com

RewriteRule(。
)http://www.new.com/$1 [R = 301,L]

RewriteCond%{HTTP_HOST} ^ www \ .old \ .com

RewriteRule(。
)http://www.new.com/$1 [R = 301,L]

6.友好的URL

友好和信息丰富的URL有助于搜索引擎排名。
URL是搜索引擎优化过程中非常主要的一部分。

个人资料网址

配置文件参数[ a-zA-Z0-9_- ]会打开此输入(有关更多帮助,请阅读正则表达式):http://gurutechnolabs.com/profile.php?username=test成http:// gurutechnolabs.com/test

RewriteRule ^([a-zA-Z0-9 _-] +)$ profile.php?username = $ 1

RewriteRule ^([a-zA-Z0-9 _-] +)/ $ profile.php?username = $ 1

朋友网址

http://gurutechnolabs.com /friends.php?username=test到http://gurutechnolabs.com/friends/test

RewriteRule ^ friends /([a-zA-Z0-9 _-] +)$ friends.php?username = $ 1

RewriteRule ^ friends /([a-zA-Z0-9 _-] +)/ $ friends.php?username = $ 1

具有两个参数的朋友URL

这里第一个参数许可[a-zA-Z0-9_-],第二个参数只许可数字[ 0-9 ]

http://gurutechnolabs.com/friends.php?username=test&page=2至http://gurutechnolabs.com/friends/test/2

RewriteRule ^ friends /([a-zA-Z0-9 _-] +)/([0-9] +)$ friends.php?username = $ 1&page = $ 2

RewriteRule ^ friends /([a-zA-Z0-9 _-] +)/([0-9] +)/ $ friends.php?username = $ 1&page = $ 2

7.隐蔽文件扩展名

假设您不想显示网页扩展名。

示例:

http://www.yourdomain.com/index.html至 http://www.yourdomain.com/index只需添加以下代码:

RewriteRule ^([^ /。
] +)/?$ $ 1.html

利用.htaccess提高网站速率和性能

1.启用压缩:

压缩对付减小网页大小非常有用。

有两种压缩选项:

Deflate:非常随意马虎设置。
GZIP:功能更强大,您可以预先压缩内容。

要启用Deflate模式,请在.htaccess中添加以下代码

<ifmodule mod_deflate.c>

AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript text/javascript

</ifmodule>

启用GZIP压缩模式

<ifModule mod_gzip.c>

mod_gzip_on Yes

mod_gzip_dechunk Yes

mod_gzip_item_include file .(html?|txt|css|js|php|pl)$

mod_gzip_item_include handler ^cgi-script$

mod_gzip_item_include mime ^text/.

mod_gzip_item_include mime ^application/x-javascript.

mod_gzip_item_exclude mime ^image/.

mod_gzip_item_exclude rspheader ^Content-Encoding:.gzip.

</ifModule>

2.添加过期标题:启用浏览器缓存

Expire标头用于缓存来自浏览器的数据。
加速网页是有帮助的,由于网页可以从浏览器中检索数据,因此无需从减少HTTP要求的做事器获取数据。

<IfModule mod_expires.c>

ExpiresActive on

#如果要设置默认过期日期

ExpiresDefault“访问加1个月”

#对付html文档

ExpiresByType text / html“access plus 0 seconds”

#数据

ExpiresByType text / xml“access plus 0 seconds”

ExpiresByType application / xml“access plus 0 seconds”

ExpiresByType运用程序/ json“访问加0秒”

# RSS订阅

ExpiresByType运用程序/ rss + xml“访问加1小时”

#Favicon(无法重命名)

ExpiresByType image / x-icon“访问加1周”

#Media:图像,视频,音频

ExpiresByType image / gif“access plus 1 month”

ExpiresByType image / png“access plus 1 month”

ExpiresByType image / jpg“access plus 1 month”

ExpiresByType image / jpeg“access plus 1 month”

ExpiresByType视频/ ogg“访问加1个月”

ExpiresByType音频/ ogg“访问加1个月”

ExpiresByType视频/ mp4“访问加1个月”

#CSS和JavaScript

ExpiresByType text / css“access plus 1 year”

ExpiresByType运用程序/ javascript“访问加1年”

ExpiresByType text / javascript“access plus 1 year”

<IfModule mod_headers.c>

Header append Cache-Control \公众public\"大众

</IfModule>

</IfModule>

3.启用Keep-Alive以减少HTTP要求

通过启用Keep-Alive,您的Web做事器见告Web浏览器不须要为它在站点上检索的每个文件单独要求。
此外,请确保以减少HTTP要求的办法对其进行编码。

<ifModule mod_headers.c> Header Set Connection Keep-alive <ifModule>

4.防止垃圾邮件机器人抓取您的网站

有时,您的网站的页面加载速率可能会因主机方案中可用的带宽而降落。
有时垃圾邮件船会占用您的大部分带宽,而您的网站也会变慢。

因此,防止垃圾邮件是有帮助的。

<ifModule mod_setenvif.c>

#将垃圾邮件发送者引荐为spambot

SetEnvifNoCase Referer spambot1.com spambot=yes

SetEnvifNoCase Referer spambot1.com spambot=yes

#添加任意数量的内容

Order allow,deny

Allow from all

Deny from env=spambot

<ifModule>

因此,我们可以将.htaccess文件用于多种用场。