如果服务器apache还没有安装,那很简单,在编译apache时将mod_rewrite模块编译进去就可以。
今天遇到的是apache已经安装好了,现在只想编译出mod_rewrite.so模块,在apache 中进行加载。
取得root权限就可以做了。
[mam-main@ohta mappers]$ su mam
Password:
[mam@ohta mappers]$ sudo su
Password:
[root@ohta mappers]# /usr/local/apache2/bin/apxs -i -a -c ./mod_rewrite.c
然后就会出现编译过程:
/usr/local/apache2/build/libtool --silent --mode=compile gcc -prefer-pic -DAP_HAVE_DESIGNATED_INITIALIZER -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -g -O2 -pthread -I/usr/local/apache2/include -I/usr/local/apache2/include -I/usr/local/apache2/include -c -o ./mod_rewrite.lo ./mod_rewrite.c && touch ./mod_rewrite.slo
/usr/local/apache2/build/libtool --silent --mode=link gcc -o ./mod_rewrite.la -rpath /usr/local/apache2/modules -module -avoid-version ./mod_rewrite.lo
/usr/local/apache2/build/instdso.sh SH_LIBTOOL='/usr/local/apache2/build/libtool' ./mod_rewrite.la /usr/local/apache2/modules
/usr/local/apache2/build/libtool --mode=install cp ./mod_rewrite.la /usr/local/apache2/modules/
cp ./.libs/mod_rewrite.so /usr/local/apache2/modules/mod_rewrite.so
cp ./.libs/mod_rewrite.lai /usr/local/apache2/modules/mod_rewrite.la
cp ./.libs/mod_rewrite.a /usr/local/apache2/modules/mod_rewrite.a
chmod 644 /usr/local/apache2/modules/mod_rewrite.a
ranlib /usr/local/apache2/modules/mod_rewrite.a
PATH="$PATH:/sbin" ldconfig -n /usr/local/apache2/modules
----------------------------------------------------------------------
Libraries have been installed in:
/usr/local/apache2/modules
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,--rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
chmod 755 /usr/local/apache2/modules/mod_rewrite.so
[activating module `rewrite' in /usr/local/apache2/conf/httpd.conf]
如果没有什么错误的话,会在apache/modules目录中编译出一个mod_rewrite.so文件。
同时,会在
vi /usr/local/apache2/conf/httpd.conf 里加载:
LoadModule rewrite_module modules/mod_rewrite.so <script type="text/javascript"><!-- google_ad_client = "pub-1667244091016600"; //468x60, 创建于 07-12-7 google_ad_slot = "0016097167"; google_ad_width = 468; google_ad_height = 60; //--></script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script>
今天遇到的是apache已经安装好了,现在只想编译出mod_rewrite.so模块,在apache 中进行加载。
取得root权限就可以做了。
[mam-main@ohta mappers]$ su mam
Password:
[mam@ohta mappers]$ sudo su
Password:
[root@ohta mappers]# /usr/local/apache2/bin/apxs -i -a -c ./mod_rewrite.c
然后就会出现编译过程:
/usr/local/apache2/build/libtool --silent --mode=compile gcc -prefer-pic -DAP_HAVE_DESIGNATED_INITIALIZER -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -g -O2 -pthread -I/usr/local/apache2/include -I/usr/local/apache2/include -I/usr/local/apache2/include -c -o ./mod_rewrite.lo ./mod_rewrite.c && touch ./mod_rewrite.slo
/usr/local/apache2/build/libtool --silent --mode=link gcc -o ./mod_rewrite.la -rpath /usr/local/apache2/modules -module -avoid-version ./mod_rewrite.lo
/usr/local/apache2/build/instdso.sh SH_LIBTOOL='/usr/local/apache2/build/libtool' ./mod_rewrite.la /usr/local/apache2/modules
/usr/local/apache2/build/libtool --mode=install cp ./mod_rewrite.la /usr/local/apache2/modules/
cp ./.libs/mod_rewrite.so /usr/local/apache2/modules/mod_rewrite.so
cp ./.libs/mod_rewrite.lai /usr/local/apache2/modules/mod_rewrite.la
cp ./.libs/mod_rewrite.a /usr/local/apache2/modules/mod_rewrite.a
chmod 644 /usr/local/apache2/modules/mod_rewrite.a
ranlib /usr/local/apache2/modules/mod_rewrite.a
PATH="$PATH:/sbin" ldconfig -n /usr/local/apache2/modules
----------------------------------------------------------------------
Libraries have been installed in:
/usr/local/apache2/modules
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,--rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
chmod 755 /usr/local/apache2/modules/mod_rewrite.so
[activating module `rewrite' in /usr/local/apache2/conf/httpd.conf]
如果没有什么错误的话,会在apache/modules目录中编译出一个mod_rewrite.so文件。
同时,会在
vi /usr/local/apache2/conf/httpd.conf 里加载:
LoadModule rewrite_module modules/mod_rewrite.so <script type="text/javascript"><!-- google_ad_client = "pub-1667244091016600"; //468x60, 创建于 07-12-7 google_ad_slot = "0016097167"; google_ad_width = 468; google_ad_height = 60; //--></script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script>