您好,登錄后才能下訂單哦!
這篇文章主要介紹了apache服務器如何配置重定向,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
什么是重定向?
通過各種方法將各種網絡請求重新定個方向,轉到其他地方(分為內部和外部, 內部是看不到的,外部url會變化)
這是官方的介紹,用自己的話來說, 重定向就是把網絡請求到另一個地方, 本來你是想去西安的,重定向把你送到雅安去了。就是這么一個意識
重定向有什么作用呢?
在說有什么作用,我們談談什么時候會用到重定向?
比如現在你的網站結構要進行調整,以前訪問 music.jack.net就可以訪問到,現在訪問不到, 用重定向就可以繼續訪問。
用ThinkPHP框架的小伙伴都知道,我們會有一個.htaccess文件,這個文件就是配置重定向規則. 讓你在訪問yuns.com就像在訪yuns.com/index.php, 這里你就不用輸入index.php也可以訪問到. 如果你刪除了.htaccess文件,你再輸入yuns.com, Apache會返回找不到訪問的文件
上面兩個舉例就是重定向的運用, 這里我們可以得出重定向的作用就是可以把網絡請求的地址轉到其他的地方去, 而這種轉向可以在內部,用戶是看不到的,也可以在外部,讓用戶看到。比如你的網址換了,就可以使用外部重定向,用戶在收藏地址的時候,就收藏新的網址
實現重定向
實現重定向有三種方法
創建.htaccess文件
在你的項目文件中創建一個.htaccess文件, 在windows操作系統中,不可以直接新建一個【.】開頭的文件,我們可以在命令行模式下創建
進入命令行模式后,切換到你要創建.htaccess文件的目錄下, 這里我切換到: d: \wamp\www\ 接下來輸入: echo 1>.htaccess //文件就創建成功了
我們打開.htaccess文件, 在文件中編寫如下內容
RewriteEngine On #開始重寫 RewriteRule ^(.*)\$ test.html #重寫規則(規則是一個正則表達式) #這里的配置是一個舉例,你可以根據你的項目來配置
在地址中輸入你的項目地址, 然后服務器就會定向到你配置的地址中去
在Apache的httpd.conf配置
在配置中找到AllowOverride None,在它的下面添加重定向規則,這里要書寫正確, 如果寫錯了,Apache重啟將會失敗
AllowOverride None #這里我們不用重寫權限,可以關閉 RewriteEngine On #開始重寫 RewriteRule ^(.*)\.html$ test.html #重寫規則
用PHP中進行重定向
介于PHP簡單,這里我們用PHP來實現重定向, 用PHP重定向地址欄中的url會變化, 而上面兩種方法是不會的。這看你的項目是用外部還是內部重定向
<?php header('Location:test.html'); //重定向你要訪問的資源
配置Apache
大家如果在使用PHP的集成環境, 有的集成環境把Apache常用到的配置都配置好了,無需修改,但是自己的項目放在網上,配置是自己去配置的. 在使用重定向的時候,要配置Apache的配置文件httpd.conf,
1、修改AllowOverride none 改為AllowOverride alll,這樣就可以指明Apache服務器是否去找.htacess文件作為配置文件
2、去掉LoadModule rewrite_module modules/mod_rewrite.so前的”#”
這樣修改過后, 你配置的.htaccess文件就有效了
htaccess文件的工作原理
.htaccess文件提供了針對每個目錄改變配置的方法,比如在一個目錄放置了一個.htaccess文件,那么它的指令是作用于此目錄以及此目錄所有的子目錄
用了.htaccess文件后性能會有所下降,開啟后訪頁面, 要查找所有上級的目錄中的.htaccess文件,建議項目上線后把重定向規則放在httpd.conf中。
感謝你能夠認真閱讀完這篇文章,希望小編分享apache服務器如何配置重定向內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。