我发觉研究的东西多了,就会看到各种神奇的 Bug……
今天写的这个 Bug 是关于 Apache 的 Rewrite 模块的。先来看一个很正常的 Rewrite 规则:
1
2
| RewriteCond %{REQUEST_URI} \.u$
RewriteRule ^(.*)\.u$ $1 |
这个什么意思呢?用过的人一定看得出来,就是把一个 .t 结尾的请求发送到一个去掉 .t 的文件上面。比如我如果请求 upsuper.u 就会自动调用 upsuper 这个文件来返回。这没有什么疑问。
然后,我们发现,.u 文件浏览器不知道是什么,而 upsuper 这个文件在服务器上又是没有类型的,于是 Apache 不知道告诉浏览器(或者错误地告诉了一个)MIME-Type。这样即使这个文件是个网页,浏览器上也会出现下载提示或者当作纯文本直接输出。
翻阅了一下 Rewrite 模块的资料,我们了解到可以使用 T 这个标志符来强制指定 MIME-Type 类型,于是规则变成了下面这样:
1
2
| RewriteCond %{REQUEST_URI} \.u$
RewriteRule ^(.*)\.u$ $1 [T=text/html] |
可是无效!
Bug 开始出现了~
Read the rest of this entry »
< Apache,Bug,Rewrite >
由于某些众所周知的原因,我准备将空间搬到米国去了。由于另一个众所周知的原因,现在的域名也将很快停止使用。
我已经申请好了新的空间,近期可能就要搬过去了。先做个广告:在此诚招空间合租者一位,无限空间无限流量,PHP、Python、Perl、RoR、CGI、CGI-BIN、MySQL、PgSQL 全功能 Linux 空间,可自定义 php.ini,提供域名对应的邮箱储存、邮箱别名服务,支持 POP3、IMAP、邮件列表,独立 FTP 管理,带免费自签名证书的 SSL 服务,含一个免费域名及一个独立 IP,3年共计525元RMB。有意者邮箱联系 quanxunzhen@gmail.com
不过因为新空间还没摸索清楚,还在研究搬迁事宜。
Read the rest of this entry »
< Apache,CGI,My Blog,PHP,和谐 >
今天继续Ubuntu之旅~
今天做的主要事情就是安装IE。安装IE其实没什么特别好讲的,为什么呢?因为已经有现成的脚本了,直接下载过来然后运行一下就可以了。具体就是要下载一个文件ies4linux.tar.gz,这是最重要的东西了,其他都简单。不过这个文件我今天在Ubuntu上死都下不了,从迅雷下载的情况看,是没有从原始地址得到数据,所以传到这里来,大家需要的可以直接下:ies4linux.tar.gz (324.55KB)。
Read the rest of this entry »
< Apache,Linux,Ubuntu,虚拟机 >
今天小小地探索了一下伟大的Ubuntu,使用的是刚出的Ubuntu8.04LTS。这里就来说一说吧~
Read the rest of this entry »
< Apache,Linux,MySQL,PHP,Ubuntu,快捷键,虚拟机 >
今天把一个PHP文件放到下载目录去,但是会自动解析。于是就查了各种资料如何阻止Apache解析指定目录的PHP,但是查到的几种方法都不行,似乎是因为服务器的原因?httpd.conf的权限自然不是在我的。
我就换了一种想法,用URL Rewrite试试?把php文件改名后编写了一个.htaccess,把所有.php的文件rewrite到.php_file上去,终于成功实现了!
Read the rest of this entry »
< Apache,PHP >
Comments