日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

给apache安装mod_rewrite模块

發布時間:2023/12/9 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 给apache安装mod_rewrite模块 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

給apache安裝mod_rewrite模塊

原文鏈接:http://opkeep.com/system/linux/apache_mod_rewrite.html


只是用來做參考,相關情況可跟據自己的需求進行修改
如果你的服務器apache還沒有安裝,那很簡單,在編譯apache時將mod_rewrite模塊編譯進去就可以,相關文檔可以在[url] www.gbunix.com[/url]中找到。如果你的apache已經安裝好了,現在只想編譯出mod_rewrite.so模塊,在apache 中進行加載,下面我們就介紹這個方法。
以Solaris操作系統進行舉例:

# PATH=/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin: $PATH
# export PATH
# which gcc
# which make

# find ./ -name mod_rewrite.c //在apache的安裝目錄中尋找mod_rewrite.c文件
# cd PATH/to/mod_rewrite.c //進入包含mod_rewrite.c文件的目錄
# apxs -c mod_rewrite.c //apxs請指定絕對路徑,在你當前正在使用apache的bin目錄里
# apxs -i -a -n mod_rewrite mod_rewrite.la

如果沒有什么錯誤的話,應該在你的apache的modules目錄中編譯出一個mod_rewrite.so文件。

編輯httpd.conf文件,確認httpd.conf中已經包含mod_rewrite.so的加載語句,如下:

LoadModule rewrite_module modules/mod_rewrite.so

這時,你的apache應該已經支持rewrite了。

=============================

apache已安裝完畢,手動添加mod_rewrite模塊
#find . -name mod_rewrite.c //在apache的源碼安裝目錄中尋找mod_rewrite.c文件
#cd modules/mappers/mod_rewrite.c //進入包含mod_rewrite.c文件的目錄
#/usr/share/apache-2.2.11/bin/apxs -c mod_rewrite.c //apxs應指定絕對路徑,在你當前正在使用apache的bin目錄里
#/usr/share/apache-2.2.11/bin/apxs -i -a -n mod_rewrite mod_rewrite.la
如果沒有什么錯誤的話,應該在你的apache的modules目錄中編譯出一個mod_rewrite.so文件。
編輯httpd.conf文件,確認httpd.conf中已經包含mod_rewrite.so的加載語句,如下:
LoadModule rewrite_module modules/mod_rewrite.so
這時,你的apache應該已經支持rewrite了。
注:完成之后,記得重啟服務器apache。
7.可能遇到的問題
httpd: Syntax error on line 54 of /usr/share/apache-2.2.11/conf/httpd.conf: Can’t locate API module structure `mod_rewrite_module’ in file /usr/share/apache-2.2.11/modules/mod_rewrite.so: /usr/share/apache-2.2.11/modules/mod_rewrite.so: undefined symbol: mod_rewrite_module
修改 httpd.conf,將
LoadModule mod_rewrite_module modules/mod_rewrite.so
改為
LoadModule mod_rewrite modules/mod_rewrite.so
如果出現這個錯誤
Syntax error on line 329 of /usr/local/apache2/conf/httpd.conf:
Can`t loacte API module staructure `mod_rewrite_module` in file
/usr/local/apache2/modules/mod_rewrite.so:/usr/local/apache2/lib/libapr-
0.so.0:undefined symbol:mod_rewrite_module
修改http.conf
原來:httpd.conf里面寫的mod_rewrite_module
改成 rewrite_module

如果重啟apache出現這個錯誤module rewrite_module is built-in and can`t be loaded
表示模塊是內建的,不用再調入,注釋掉
#LoadModule rewrite_module modules/mod_rewrite.so
#####################################################
檢查:
[root@www httpd-2.2.8]# ../bin/apachectl configtest
Syntax OK
這時,你的apache應該已經支持rewrite了。

注意下一步,配置虛擬主機的時候要類似如下設置才可以生效:
DocumentRoot /var/www/www/www.fastu.cn/
ServerName www.fastu.cn

Options FollowSymLinks
AllowOverride All
order allow,deny
Allow from all

如果AllowOverride設置為none的話,apache會不讀取網站的.htaccess文件!

總結

以上是生活随笔為你收集整理的给apache安装mod_rewrite模块的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。