免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2008 | 回复: 2
打印 上一主题 下一主题

[Web] apache2.0如何应用URL重写功能解决/问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-06-05 19:53 |只看该作者 |倒序浏览
参考相关资料做了一下午都没有解决目录后/自动添加的问题,请问多个虚拟主机的配置如何写URL 重写规则实现目录后/自动添加,避免浏览报错。

希望达到的效果:
输入http://www.123.com/abc访问转换为http://www.123.com/abc/
环境:FreeBSD 4.10,Apache 2.0
谢谢!

论坛徽章:
0
2 [报告]
发表于 2004-06-06 00:45 |只看该作者

apache2.0如何应用URL重写功能解决/问题

用这个命令检查你是否安装了mod_rewrite, $APACHE_HOME/bin/apachectl -l|grep rewrite
如果显示 mod_rewrite.c ,标明你安装了,接下来修改httpd.conf加入以下代码:



  1. DocumentRoot          /www/123
  2. RewriteLogLevel       3
  3. RewriteLog            "logs/rewrite_log"

  4. <Directory "/www/123">;

  5.    RewriteEngine        on                                         # 打开引擎
  6.    RewriteBase          /                                             # 从根目录开始
  7.    RewriteCond         %{REQUEST_FILENAME}  -d  # 被请求文件是否是一个目录
  8.    RewriteRule    ^(.+[^/])$           $1/  [R]              # 是目录,而且他没有以/作为结尾, 现在我们帮他添加一个/,然后用redirect的方式重写这个url

  9. </Directory>;

复制代码



成功的话,就回个贴

论坛徽章:
0
3 [报告]
发表于 2004-06-06 10:47 |只看该作者

apache2.0如何应用URL重写功能解决/问题

楼兄,还是不对。按照您的方法:
1、apachectl -l|grep rewrite没有,但是我用phpinfo()函数看见apache有装载mod_rewrite,查看httpd.conf文件也有LoadModule rewrite_module libexec/apache2/mod_rewrite.so
2、按照您的规则加到httpd.conf并restart apache,提示如下错误:
Syntax error on line 1064 of /usr/local/etc/apache2/httpd.conf:
RewriteBase takes one argument, the base URL of the per-directory context;我试过多次,只要加RewriteBase就会这样。

结果还是无法自动添加/,访问错误。
请您继续指点,谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP