免费注册 查看新帖 |

Chinaunix

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

[Web] 关于apache mod_rewrite求助 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-08-29 10:25 |只看该作者 |倒序浏览
红旗linux4.1服务器版,apache 2.0.46,安装成已经带mod_rewrite模块,并且已经加载了!需要实现功能:
使用独立的虚拟主机配置文件配置大量的虚拟主机

以下是参考文档
使用独立的虚拟主机配置文件
这样的布局利用了 mod_rewrite 的高级特性, 在独立的虚拟主机配置文件中转换。如此可以更为灵活,但需要较为复杂的设置。

vhost.map 文件包含了类似下面的内容:

www.customer-1.com /www/customers/1
www.customer-2.com /www/customers/2
# ...
www.customer-N.com /www/customers/N


http.conf 包含了:

RewriteEngine on

RewriteMap lowercase int:tolower

# 定义映像文件
RewriteMap vhost txt:/www/conf/vhost.map

# 和上面的例子一样,处理变名
RewriteCond %{REQUEST_URI} !^/icons/
RewriteCond %{REQUEST_URI} !^/cgi-bin/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
# 这里做基于文件的重新映射
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/docs/$1

RewriteCond %{REQUEST_URI} ^/cgi-bin/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/cgi-bin/$1


按照这个方法配置后,虚拟主机并没有启动,但重新启动apache并没有错误提示!
高手提点以下,谢!

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
2 [报告]
发表于 2005-08-29 11:18 |只看该作者

关于apache mod_rewrite求助

首先,采用虚拟主机的方式,确定你的www.customer-1.com确实可以被正常使用了。

然后采用rewrite地方时,并特别注意,打开rewrite的log看看解析过程。

论坛徽章:
0
3 [报告]
发表于 2005-08-29 13:18 |只看该作者

关于apache mod_rewrite求助

有什么错误的log帖上来看下

论坛徽章:
0
4 [报告]
发表于 2005-09-03 16:24 |只看该作者

关于apache mod_rewrite求助

没有任何的错误提示!

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
5 [报告]
发表于 2005-09-03 17:00 |只看该作者

关于apache mod_rewrite求助

打开rewrite的log看看解析过程。

不是apache的log

论坛徽章:
0
6 [报告]
发表于 2005-09-03 17:24 |只看该作者

关于apache mod_rewrite求助

感谢!但不知道rewrite用的是那个日志?他有自己独立的日志么?我是菜鸟!

论坛徽章:
0
7 [报告]
发表于 2005-09-03 17:48 |只看该作者

关于apache mod_rewrite求助

在http里面添加这一行,置顶rewrite的日志
RewriteLog "/var/log/httpd/rewrite.log"

重新启动apache后自动在在此目录里面生成了了rewrite.log

但访问域名时,服务器还是没有错误提示,仅仅返回一个403的错误!rewrite的日志没有记录任何内容!

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
8 [报告]
发表于 2005-09-03 23:33 |只看该作者

关于apache mod_rewrite求助

请首先查看:
http://w.yi.org/ftp/FAPM/apache/Apache2/zh/mod/mod_rewrite.html#rewriteloglevel

RewriteLogLevel 指令
说明: 设置重写引擎日志的详细程度的级别
语法: RewriteLogLevel Level
默认值: RewriteLogLevel 0
上下文: 服务器配置, 虚拟主机
状态: Extension
模块: mod_rewrite

RewriteLogLevel指令设置重写引擎日志的详细程度的级别。 默认级别0意味着不记录,而9或更大的值意味着记录所有的操作。

要关闭重写引擎日志,可以简单地设此值为0,关闭所有的重写操作记录。

使用较高的Level值会使Apache服务器速度急剧下降! 重写日志使用大于2的Level值只用于调试!
举例
RewriteLogLevel 3

论坛徽章:
0
9 [报告]
发表于 2005-09-04 18:11 |只看该作者

关于apache mod_rewrite求助

我将RewriteLogLevel 改为9还是不行,rewrite.log根本就没有记录!


RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/docs/$1

RewriteCond %{REQUEST_URI} ^/cgi-bin/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/cgi-bin/$1

几行配置需要根据服务器设置修改么?

论坛徽章:
0
10 [报告]
发表于 2005-09-26 18:35 |只看该作者

关于apache mod_rewrite求助

还在等待回答
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP