linux下apache開啟url重寫的方法(詳細說明)

來源:互聯網
上載者:User

Linux開啟url重寫的方法:

1、開啟 apache 裡httpd.conf(通常是在/etc/httpd/conf目錄裡)

2、找到 #LoadModule rewrite_module modules/mod_rewrite.so 去掉前面的#

3、找到 AllowOverride None 改成 AllowOverride All , 有兩個全部改掉

註:AllowOverride 的參數設定為ALL,表示整台伺服器上都支援URL規則重寫。Apache 伺服器要讀每個網站下目錄下的 .htaccess 檔案。如果沒有這個檔案,或者這個文檔沒有定義任何關於URL重寫的規則就不會有任何效果。

重啟apache (用命令:service httpd restart)。

Apache開啟URL重寫功能方法詳細篇

1、關於rewrite模組的調用:
Apache 2.x 中URL重寫,是通過mod_rewrite.so 來實現的,所以您要查看您的Apache 是否已經被編譯進去這個模組了,並且在Apache的設定檔httpd.conf 中已經調用了這個模組。在大多數主流發行版中,Apache 2.x 是把rewrite模組已經編入進去了。比如我用的是Slackware。Apache 2.x的設定檔,放在 /etc/httpd 目錄下。

在 httpd.conf 中,我們會發現類似如下的一行,是有關rewrite模組的,模組名是 mod_rewrite.so 。

LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so

LoadModule rewrite_module lib/apache2/modules/mod_rewrite.so 如果前面有#號,您要去掉。對於大多數發行版來說,Apache 2的模組一般是位於如下的兩個位置

/usr/lib/apache2/modules


/usr/lib/httpd/modules 如果在httpd中開啟調用rewrite_module的設定,查看一下是不是能調用了,要通過 httpd -M的參數來查看;

#/usr/sbin/httpd -M

如果發現有如下一行,說明模組已經能被調用了

rewrite_module (shared)

2、設定DocumentRoot的Directory:

在Apache 2.x 中,我們會看到 DocumentRoot設定的一行。這行就是存放網頁程式的地方。比如LinuxSir.Org 存放在 /opt/www 目錄中。那麼我們就要設定 DocumentRoot為如下的。

DocumentRoot "/opt/www" 然後我們再還要對 DocumentRoot做針對性的行為設定。在一般的情況下,httpd.conf 會給一個預設的。如果你要改 DocumentRoot的路徑,同時也要改針對DocumentRoot的Directory的設定,也就是

<Directory "DocumentRoot所設定的路徑">

比如我們把DocumentRoot的路徑改為了 "/opt/www",那我們也要把Directory做針對性的行為設定也要改成這個路徑。

<Directory "/opt/www">

Options FollowSymLinks
#AllowOverride None 註:把這行前面加#號,然後加下面的一行 ,也就是 AllowOverride ALL
AllowOverride ALL
Order allow,deny
Allow from all
</Directory> 我們把AllowOverride 的參數設定為ALL,表示整台伺服器上的,都支援URL規則重寫。Apache 伺服器要讀每個網站根目錄下的 .htaccess 檔案。如果沒有這個檔案,或者這個文檔沒有定義任何關於URL重寫的規則,則不會有任何效果。在一般的情況下,成熟的Web 服務器應用套件,都支援URL重寫的,比如drupal和joomla 。當我們用這些程式時,會發現在安裝包中有 .htaccess中有這個檔案。我們把Apache配置好後,只是需要在這些程式的後台開啟此功能就行了。

3、重啟httpd伺服器:

在一般情況下,在各個發行版中,都有httpd伺服器啟動指令碼,比如
# /etc/rc.d/rc.httpd restart 註:Slackware Linux

# /etc/init.d/apache2 restart 註:ubuntu、Debian 等;
# /etc/init.d/httpd start 注:Fedora 、Redhat、CentOS

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.