apache的URL重写使用心得

网络整理 - 07-27

整合PHP和Apache­

  第一步,安装好apache服务器­

  第二步,在apache安装目录下的conf文件夹下用记事本打开httpd.conf­

    1、修改DocumentRoot为网站根目录,<Directory "网站根目录"> 这里也要一并修改­

    2、加一句 LoadModule php5_module PHP安装目录/php5apache2_2.dll­

    3、在AddType application/x-gzip .gz .tgz 下加入一句: AddType application/x-httpd-php .php­

    4、修改Listen:80为自己需要的端口­

    5、修改DirectoryIndex 默认访问页­

    6、AllowOverride none 改为 AllowOverride all ,这样可以支持重写,支持.htaccess文件­

  第三步,   保存httpd.conf,并重启apache即可­

­

URL重写配置­

  今天得到“为梦流浪的人”这位朋友指点,对apache服务器url重写的使用进行了实际演练,基本掌握url重写的一些配置,非常感谢这个群和这位朋友,总结我的使用心得如下: ­

  为站点根目录配置URL重写和相对目录配置URL重写: ­

  都要配置的是打开apache的配置文件httpd.conf,找到<Directory "网页文件根目录位置">,然后再下面将AllowOverride None改成AllowOverride All,当然最重要做的是讲#LoadModule rewrite_module modules/mod_rewrite.so前面的#号去掉(去掉注释). ­

       对于站点根目录有效的重写,需要在网站根目录下面建立一个文件.htaccess文件,内容为: ­

                   RewriteEngine On ­

                   RewriteBase / ­

                   RewriteRule ^([0-9]+)\.html$ test.php?id=$1 ­

       对于相对目录URL重写配置,也需要在网站目录下面建立一个文件.htaccess文件,内容为: ­

                   RewriteEngine On ­

                   RewriteRule ^([0-9]+)\.html$ test.php?id=$1 ­

       和上面相比,去掉中间RewriteBase /这行代码即可,对于这个.htaccess文件的修改,好处是不需要重新启动apache服务器就可以生效。 ­

       注意:对于windows服务器,不能直接建立.htaccess文件,因为windows规定文件必须有文件名,而.htaccess文件没有,我们可以通过在cmd下的rename命令建立。方法如下:建立一个htaccess文件(没有扩展名),然后进入cmd中庸rename命令修改为.htaccess文件(如果不熟悉rename命令,可以通过help rename查看具体命令使用方法)。就可以了,然后用记事本编辑就万事OK了。­

     当然apache的url重写还有更强大的功能,比如可以为某个目录配置重写规则等,要多去研究下了­