Apache如何开启Rewrite模块?

Linux

Rewrite url重定向就是实现URL的跳转和隐藏真实地址,基于Perl语言的正则表达式规范。Rewrite模块平时帮助我们实现拟静态,拟目录,域名跳转,防止盗链等。下面PHP程序员雷雪松详细的讲解Apache如何开启Rewrite模块。

查看是否加载了module

1
httpd -M

修改httpd.conf配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
LoadModule rewrite_module modules/mod_rewrite.so
将前面"#"去掉,如果不存在则添加上句。

<Directory />
Options FollowSymLinks
AllowOverride None(修改为AllowOverride All)
</Directory>

<Directory "/var/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride None(修改为AllowOverride All)
Order allow,deny
allow from all
</Directory>

附录:
httpd的参数详解
-d serverroot
将ServerRoot指令设置初始值为serverroot。它可以被配置文件中的ServerRoot指令所覆盖。其默认值是/usr/local/apache2 。
-f config
在启动中使用config作为配置文件。如果config不以”/”开头,则它是相对于ServerRoot的路径。其默认值是conf/httpd.conf 。
-k start|restart|graceful|stop|graceful-stop
发送信号使httpd启动、重新启动或停止 。
-C directive
在读取配置文件之前,先处理directive的配置指令。
-c directive
在读取配置文件之后,再处理directive的配置指令。
-D parameter
设置参数parameter ,它配合配置文件中的<IfDefine>段,用于在服务器启动和重新启动时,有条件地跳过或处理某些命令。
-e level
在服务器启动时,设置LogLevel为level 。它用于在启动时,临时增加出错信息的详细程度,以帮助排错。
-E file
将服务器启动过程中的出错信息发送到文件file 。
-R directory
当在服务器编译中使用了SHARED_CORE规则时,它指定共享目标文件的目录为directory 。
-h
输出一个可用的命令行选项的简要说明。
-l
输出一个静态编译在服务器中的模块的列表。它不会列出使用LoadModule指令动态加载的模块。
-L
输出一个指令的列表,并包含了各指令的有效参数和使用区域。
-M
输出一个已经启用的模块列表,包括静态编译在服务器中的模块和作为DSO动态加载的模块。
-S
显示从配置文件中读取并解析的设置结果(目前仅显示虚拟主机的设置)
-T
在启动/重启的时候跳过根文件检查 (该参数在Apache 2.2.17及其以后版本有效)
-t
仅对配置文件执行语法检查。程序在语法解析检查结束后立即退出,或者返回”0″(OK),或者返回非0的值(Error)。如果还指定了”-D DUMP_VHOSTS”,则会显示虚拟主机配置的详细信息。
-v
显示httpd的版本,然后退出。
-V
显示httpd和APR/APR-Util的版本和编译参数,然后退出。
-X
以调试模式运行httpd 。仅启动一个工作进程,并且服务器不与控制台脱离。

来源:Apache如何开启Rewrite模块?

发表评论

电子邮件地址不会被公开。 必填项已用*标注