日期:2014-5-16 浏览次数:20143次

[apache]apache配置url重写示例

[1] 首先修改http.conf文件

#LoadModule rewrite_module modules/mod_rewrite.so 
#去掉前面的分号

?

[2] 然后修改相应的AllowOverride None重写为AllowOverride All设置

<Directory "d:/wamp/www/">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.2/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride All

    #
    # Controls who can get stuff from this server.
    #

#   onlineoffline tag - don't remove
    Order Deny,Allow
    Allow from All
    #Allow from 127.0.0.1

</Directory>

?

[3] 之后,在d:/wamp/www/目录下,新建.htassess文件,内容为

?

RewriteEngine On 
RewriteRule index.html index.php
RewriteRule ^demo\/list-(\d+)-(\d+).html$ /demo/list\.php\?id=$1&page=$2  

注释:
RewriteRule index.html index.php 匹配index.html -> index.php
RewriteRule ^demo\/list-(\d+)-(\d+).html$ /demo/list\.php\?id=$1&page=$2  匹配为http://localhost/demo/list-123-123.html映射为http://localhost/demo/list.php?id=12&page=234

?

?