.htaccess的主要作用就是實現url改寫,也就是當瀏覽器通過url訪問到服務器某個文件夾時,作為主人,我們可以來接待這個url,具體 地怎樣接待它,就是此文件的作用。所有的訪問都是通過URL實現,所以.htaccess的作用非同小可。正因為此,所以一般地網站通過設 置.htaccess,通過一個十分友好的url吸引用戶進來,然后用.htaccess把用戶帶到需要訪問的位置。
可以使用cmd創(chuàng)建.htaccess文件
cmd指令
要想使用這個強大功能,就得開啟apache里面的重寫模塊。
conf.png
修改虛擬主機配置文件,增加 AllowOverride All
<VirtualHost *:80>
ServerName www.error.com
DocumentRoot "D:\www\error"
<Directory "D:\www\error">
#全部允許
allow from all
#沒有默認首頁,展示腳本的列表
Options indexes
#配置默認首頁
DirectoryIndex index.php index.html
#重寫模式權限
AllowOverride All
#訪問目錄有權限
Require all granted
</Directory>
</VirtualHost>
.htaccess文件示例
#判斷是否開啟重寫模塊
<IfModule mod_rewrite.c>
#開啟重寫引擎
RewriteEngine on
#RewriteRule ^(.*).html $1.php
#RewriteRule (\d+).html $1.php
#重寫商品信息的鏈接
#RewriteRule goods/(\d+).html index.php/Home/Goods/goodslist/id/$1
#RewriteRule abc.html abcd.php
#[R]外部跳轉 url會同時改變
#RewriteRule abc.html /abcd.php [G]
#重寫把參數傳輸過去
#RewriteRule (\d+).html /static.php?id=$1 [QSA]
#防止盜鏈
#滿足重寫重寫 再執(zhí)行重寫規(guī)則
#%{HTTP_REFERER} 判斷請求的來源
RewriteCond %{HTTP_REFERER} !cache.php59.com [NC]
#執(zhí)行重寫規(guī)則
#() 正則子表達式 |或者 滿足其一即可
RewriteRule (jpg|png|gif) image/2.gif
</IfModule>