溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

linux下apache怎么開(kāi)啟url重寫(xiě)

發(fā)布時(shí)間:2022-04-16 15:24:21 來(lái)源:億速云 閱讀:100 作者:iii 欄目:開(kāi)發(fā)技術(shù)

這篇文章主要講解了“l(fā)inux下apache怎么開(kāi)啟url重寫(xiě)”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“l(fā)inux下apache怎么開(kāi)啟url重寫(xiě)”吧!

linux開(kāi)啟url重寫(xiě)的方法:
1、打開(kāi) apache 里httpd.conf(通常是在/etc/httpd/conf目錄里)
2、找到 #loadmodule rewrite_module modules/mod_rewrite.so 去掉前面的#
3、找到 allowoverride none 改成 allowoverride all , 有兩個(gè)全部改掉
注:allowoverride 的參數(shù)設(shè)置為all,表示整臺(tái)服務(wù)器上都支持url規(guī)則重寫(xiě)。apache 服務(wù)器要讀每個(gè)網(wǎng)站下目錄下的 .htaccess 文件。如果沒(méi)有這個(gè)文件,或者這個(gè)文檔沒(méi)有定義任何關(guān)于url重寫(xiě)的規(guī)則就不會(huì)有任何效果。
重啟apache (用命令:service httpd restart)。
apache開(kāi)啟url重寫(xiě)功能方法詳細(xì)篇
1、關(guān)于rewrite模塊的調(diào)用:
apache 2.x 中url重寫(xiě),是通過(guò)mod_rewrite.so 來(lái)實(shí)現(xiàn)的,所以您要查看您的apache 是否已經(jīng)被編譯進(jìn)去這個(gè)模塊了,并且在apache的配置文件httpd.conf 中已經(jīng)調(diào)用了這個(gè)模塊。在大多數(shù)主流發(fā)行版中,apache 2.x 是把rewrite模塊已經(jīng)編入進(jìn)去了。比如我用的是slackware。apache 2.x的配置文件,放在 /etc/httpd 目錄下。

在 httpd.conf 中,我們會(huì)發(fā)現(xiàn)類(lèi)似如下的一行,是有關(guān)rewrite模塊的,模塊名是 mod_rewrite.so 。
loadmodule rewrite_module lib/httpd/modules/mod_rewrite.so

loadmodule rewrite_module lib/apache2/modules/mod_rewrite.so 如果前面有#號(hào),您要去掉。對(duì)于大多數(shù)發(fā)行版來(lái)說(shuō),apache 2的模塊一般是位于如下的兩個(gè)位置
/usr/lib/apache2/modules

/usr/lib/httpd/modules 如果在httpd中打開(kāi)調(diào)用rewrite_module的設(shè)置,查看一下是不是能調(diào)用了,要通過(guò) httpd -m的參數(shù)來(lái)查看;
#/usr/sbin/httpd -m
如果發(fā)現(xiàn)有如下一行,說(shuō)明模塊已經(jīng)能被調(diào)用了
rewrite_module (shared)
2、設(shè)置documentroot的directory:
在apache 2.x 中,我們會(huì)看到 documentroot設(shè)置的一行。這行就是存放網(wǎng)頁(yè)程序的地方。比如linuxsir.org 存放在 /opt/www 目錄中。那么我們就要設(shè)置 documentroot為如下的。
documentroot "/opt/www" 然后我們?cè)龠€要對(duì) documentroot做針對(duì)性的行為設(shè)置。在一般的情況下,httpd.conf 會(huì)給一個(gè)默認(rèn)的。如果你要改 documentroot的路徑,同時(shí)也要改針對(duì)documentroot的directory的設(shè)置,也就是
<directory "documentroot所設(shè)置的路徑">
比如我們把documentroot的路徑改為了 "/opt/www",那我們也要把directory做針對(duì)性的行為設(shè)置也要改成這個(gè)路徑。
<directory "/opt/www">
options followsymlinks
#allowoverride none 注:把這行前面加#號(hào),然后加下面的一行 ,也就是 allowoverride all
allowoverride all
order allow,deny
allow from all
</directory> 我們把a(bǔ)llowoverride 的參數(shù)設(shè)置為all,表示整臺(tái)服務(wù)器上的,都支持url規(guī)則重寫(xiě)。apache 服務(wù)器要讀每個(gè)網(wǎng)站根目錄下的 .htaccess 文件。如果沒(méi)有這個(gè)文件,或者這個(gè)文檔沒(méi)有定義任何關(guān)于url重寫(xiě)的規(guī)則,則不會(huì)有任何效果。在一般的情況下,成熟的web 服務(wù)器應(yīng)用套件,都支持url重寫(xiě)的,比如drupal和joomla 。當(dāng)我們用這些程序時(shí),會(huì)發(fā)現(xiàn)在安裝包中有 .htaccess中有這個(gè)文件。我們把a(bǔ)pache配置好后,只是需要在這些程序的后臺(tái)打開(kāi)此功能就行了。
3、重啟httpd服務(wù)器:
在一般情況下,在各個(gè)發(fā)行版中,都有httpd服務(wù)器啟動(dòng)腳本,比如
# /etc/rc.d/rc.httpd restart 注:slackware linux
# /etc/init.d/apache2 restart 注:ubuntu、debian 等;
# /etc/init.d/httpd start 注:fedora 、redhat、centos                                            

感謝各位的閱讀,以上就是“l(fā)inux下apache怎么開(kāi)啟url重寫(xiě)”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)linux下apache怎么開(kāi)啟url重寫(xiě)這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI