linux下apache開啟url重寫的方法(詳細(xì)說明)
更新時間:2012年04月17日 22:41:45 作者:
Apache 2.x 中URL重寫,是通過mod_rewrite.so 來實(shí)現(xiàn)的,所以您要查看您的Apache 是否已經(jīng)被編譯進(jìn)去這個模塊了,并且在Apache的配置文件httpd.conf 中已經(jīng)調(diào)用了這個模塊
Linux開啟url重寫的方法:
1、打開 apache 里httpd.conf(通常是在/etc/httpd/conf目錄里)
2、找到 #LoadModule rewrite_module modules/mod_rewrite.so 去掉前面的#
3、找到 AllowOverride None 改成 AllowOverride All , 有兩個全部改掉
注:AllowOverride 的參數(shù)設(shè)置為ALL,表示整臺服務(wù)器上都支持URL規(guī)則重寫。Apache 服務(wù)器要讀每個網(wǎng)站下目錄下的 .htaccess 文件。如果沒有這個文件,或者這個文檔沒有定義任何關(guān)于URL重寫的規(guī)則就不會有任何效果。
重啟apache (用命令:service httpd restart)。
Apache開啟URL重寫功能方法詳細(xì)篇
1、關(guān)于rewrite模塊的調(diào)用:
Apache 2.x 中URL重寫,是通過mod_rewrite.so 來實(shí)現(xiàn)的,所以您要查看您的Apache 是否已經(jīng)被編譯進(jìn)去這個模塊了,并且在Apache的配置文件httpd.conf 中已經(jīng)調(diào)用了這個模塊。在大多數(shù)主流發(fā)行版中,Apache 2.x 是把rewrite模塊已經(jīng)編入進(jìn)去了。比如我用的是Slackware。Apache 2.x的配置文件,放在 /etc/httpd 目錄下。
在 httpd.conf 中,我們會發(fā)現(xiàn)類似如下的一行,是有關(guān)rewrite模塊的,模塊名是 mod_rewrite.so 。
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
或
LoadModule rewrite_module lib/apache2/modules/mod_rewrite.so 如果前面有#號,您要去掉。對于大多數(shù)發(fā)行版來說,Apache 2的模塊一般是位于如下的兩個位置
/usr/lib/apache2/modules
或
/usr/lib/httpd/modules 如果在httpd中打開調(diào)用rewrite_module的設(shè)置,查看一下是不是能調(diào)用了,要通過 httpd -M的參數(shù)來查看;
#/usr/sbin/httpd -M
如果發(fā)現(xiàn)有如下一行,說明模塊已經(jīng)能被調(diào)用了
rewrite_module (shared)
2、設(shè)置DocumentRoot的Directory:
在Apache 2.x 中,我們會看到 DocumentRoot設(shè)置的一行。這行就是存放網(wǎng)頁程序的地方。比如LinuxSir.Org 存放在 /opt/www 目錄中。那么我們就要設(shè)置 DocumentRoot為如下的。
DocumentRoot "/opt/www" 然后我們再還要對 DocumentRoot做針對性的行為設(shè)置。在一般的情況下,httpd.conf 會給一個默認(rèn)的。如果你要改 DocumentRoot的路徑,同時也要改針對DocumentRoot的Directory的設(shè)置,也就是
<Directory "DocumentRoot所設(shè)置的路徑">
比如我們把DocumentRoot的路徑改為了 "/opt/www",那我們也要把Directory做針對性的行為設(shè)置也要改成這個路徑。
<Directory "/opt/www">
Options FollowSymLinks
#AllowOverride None 注:把這行前面加#號,然后加下面的一行 ,也就是 AllowOverride ALL
AllowOverride ALL
Order allow,deny
Allow from all
</Directory> 我們把AllowOverride 的參數(shù)設(shè)置為ALL,表示整臺服務(wù)器上的,都支持URL規(guī)則重寫。Apache 服務(wù)器要讀每個網(wǎng)站根目錄下的 .htaccess 文件。如果沒有這個文件,或者這個文檔沒有定義任何關(guān)于URL重寫的規(guī)則,則不會有任何效果。在一般的情況下,成熟的Web 服務(wù)器應(yīng)用套件,都支持URL重寫的,比如drupal和joomla 。當(dāng)我們用這些程序時,會發(fā)現(xiàn)在安裝包中有 .htaccess中有這個文件。我們把Apache配置好后,只是需要在這些程序的后臺打開此功能就行了。
3、重啟httpd服務(wù)器:
在一般情況下,在各個發(fā)行版中,都有httpd服務(wù)器啟動腳本,比如
# /etc/rc.d/rc.httpd restart 注:Slackware Linux
# /etc/init.d/apache2 restart 注:ubuntu、Debian 等;
# /etc/init.d/httpd start 注:Fedora 、Redhat、CentOS
1、打開 apache 里httpd.conf(通常是在/etc/httpd/conf目錄里)
2、找到 #LoadModule rewrite_module modules/mod_rewrite.so 去掉前面的#
3、找到 AllowOverride None 改成 AllowOverride All , 有兩個全部改掉
注:AllowOverride 的參數(shù)設(shè)置為ALL,表示整臺服務(wù)器上都支持URL規(guī)則重寫。Apache 服務(wù)器要讀每個網(wǎng)站下目錄下的 .htaccess 文件。如果沒有這個文件,或者這個文檔沒有定義任何關(guān)于URL重寫的規(guī)則就不會有任何效果。
重啟apache (用命令:service httpd restart)。
Apache開啟URL重寫功能方法詳細(xì)篇
1、關(guān)于rewrite模塊的調(diào)用:
Apache 2.x 中URL重寫,是通過mod_rewrite.so 來實(shí)現(xiàn)的,所以您要查看您的Apache 是否已經(jīng)被編譯進(jìn)去這個模塊了,并且在Apache的配置文件httpd.conf 中已經(jīng)調(diào)用了這個模塊。在大多數(shù)主流發(fā)行版中,Apache 2.x 是把rewrite模塊已經(jīng)編入進(jìn)去了。比如我用的是Slackware。Apache 2.x的配置文件,放在 /etc/httpd 目錄下。
在 httpd.conf 中,我們會發(fā)現(xiàn)類似如下的一行,是有關(guān)rewrite模塊的,模塊名是 mod_rewrite.so 。
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
或
LoadModule rewrite_module lib/apache2/modules/mod_rewrite.so 如果前面有#號,您要去掉。對于大多數(shù)發(fā)行版來說,Apache 2的模塊一般是位于如下的兩個位置
/usr/lib/apache2/modules
或
/usr/lib/httpd/modules 如果在httpd中打開調(diào)用rewrite_module的設(shè)置,查看一下是不是能調(diào)用了,要通過 httpd -M的參數(shù)來查看;
#/usr/sbin/httpd -M
如果發(fā)現(xiàn)有如下一行,說明模塊已經(jīng)能被調(diào)用了
rewrite_module (shared)
2、設(shè)置DocumentRoot的Directory:
在Apache 2.x 中,我們會看到 DocumentRoot設(shè)置的一行。這行就是存放網(wǎng)頁程序的地方。比如LinuxSir.Org 存放在 /opt/www 目錄中。那么我們就要設(shè)置 DocumentRoot為如下的。
DocumentRoot "/opt/www" 然后我們再還要對 DocumentRoot做針對性的行為設(shè)置。在一般的情況下,httpd.conf 會給一個默認(rèn)的。如果你要改 DocumentRoot的路徑,同時也要改針對DocumentRoot的Directory的設(shè)置,也就是
<Directory "DocumentRoot所設(shè)置的路徑">
比如我們把DocumentRoot的路徑改為了 "/opt/www",那我們也要把Directory做針對性的行為設(shè)置也要改成這個路徑。
<Directory "/opt/www">
Options FollowSymLinks
#AllowOverride None 注:把這行前面加#號,然后加下面的一行 ,也就是 AllowOverride ALL
AllowOverride ALL
Order allow,deny
Allow from all
</Directory> 我們把AllowOverride 的參數(shù)設(shè)置為ALL,表示整臺服務(wù)器上的,都支持URL規(guī)則重寫。Apache 服務(wù)器要讀每個網(wǎng)站根目錄下的 .htaccess 文件。如果沒有這個文件,或者這個文檔沒有定義任何關(guān)于URL重寫的規(guī)則,則不會有任何效果。在一般的情況下,成熟的Web 服務(wù)器應(yīng)用套件,都支持URL重寫的,比如drupal和joomla 。當(dāng)我們用這些程序時,會發(fā)現(xiàn)在安裝包中有 .htaccess中有這個文件。我們把Apache配置好后,只是需要在這些程序的后臺打開此功能就行了。
3、重啟httpd服務(wù)器:
在一般情況下,在各個發(fā)行版中,都有httpd服務(wù)器啟動腳本,比如
# /etc/rc.d/rc.httpd restart 注:Slackware Linux
# /etc/init.d/apache2 restart 注:ubuntu、Debian 等;
# /etc/init.d/httpd start 注:Fedora 、Redhat、CentOS
您可能感興趣的文章:
- linux下安裝apache與php;Apache+PHP+MySQL配置攻略
- linux Apache CGI 安裝配置
- linux apache下虛擬主機(jī)配置方法
- Linux下apache日志分析與狀態(tài)查看方法
- Linux下Apache安裝/增加mod_rewrite模塊的方法
- 阿里云linux服務(wù)器下安裝Apache的簡單方法
- 禁止IP訪問網(wǎng)站的多種方法分享(linux,php,nginx,apache)
- 在Linux系統(tǒng)上查看Apache服務(wù)器的錯誤日志
- CentOS(Linux)下的apache服務(wù)器配置與管理方法分享
- Linux下查看nginx apache mysql php的編譯參數(shù)
- linux下apache、mysql、php安裝配置詳細(xì)筆記
- CentOS Linux 下配置Apache2+PHP5+MySQL5+GD庫的方法
- centos下yum搭建安裝linux+apache+mysql+php環(huán)境的方法
- Linux下PHP+MYSQL+APACHE配置過程 (摘)
- centos下yum搭建安裝linux+apache+mysql+php環(huán)境教程
- Linux下將Python的Django項(xiàng)目部署到Apache服務(wù)器
- Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安裝與配置[圖文]
- 解決Linux+Apache服務(wù)器URL區(qū)分大小寫問題
相關(guān)文章
使用squid搭建http和https的代理服務(wù)器設(shè)置指南
今天小編就為大家分享一篇關(guān)于使用squid搭建http和https的代理服務(wù)器設(shè)置指南,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12vsftpd用戶禁止ssh登陸的實(shí)現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于vsftpd用戶禁止ssh登陸的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01vscode遠(yuǎn)程免密登入Linux服務(wù)器的配置方法
這篇文章主要介紹了配置vscode遠(yuǎn)程免密登入Linux服務(wù)器的操作方法,主要包括windows端操作和linux服務(wù)端操作,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06