有的时候我们在编译apache的时候可能 rewrite_module (shared) 这个模块没有加载过来那么就需要我们重新加载下这个模块


1.mod_rewrite.c查找一下文件在什么地方
[root@wqslinux mappers]# find / -name mod_rewrite.c
/usr/local/src/httpd-2.2.31/modules/mappers/mod_rewrite.c
2.重新加载编译rewrite_module  这个模块
cd /usr/local/src/httpd-2.2.31/modules/mappers  //进入到mappers目录下

/usr/local/apache2/bin/apxs -c /usr/local/src/httpd-2.2.31/modules/mappers/mod_rewrite.c  // 重新编译mod_rewrite.c,注意你自己的路径
/usr/local/apache2/bin/apxs -i -a -n mod_rewrite mod_rewrite.la   //编译
3.编译完成后重启
[root@wqslinux mappers]# /usr/local/apache2/bin/apachectl restart
httpd: Syntax error on line 55 of /usr/local/apache2/conf/httpd.conf: Can't locate API module structure `mod_rewrite_module' in file /usr/local/apache2/modules/mod_rewrite.so: /usr/local/apache2/modules/mod_rewrite.so: undefined symbol: mod_rewrite_module

如果出现以上错误,需要修改httpd.conf
vim /usr/local/apache2/conf/httpd.conf
找到以下内容
LoadModule mod_rewrite_module modules/mod_rewrite.so 
改为 
LoadModule rewrite_module modules/mod_rewrite.so 


检查语法是否有问题
/usr/local/apache2/bin/apachectl -t
重启
/usr/local/apache2/bin/apachectl restart