我很喜欢这些东西的菜鸟,但我试图用.htaccess制作一个简单的虚拟子域。我有通配符启用和大量挖掘后,这是我想出来的:我怎样才能让我的htaccess工作(子域名)?
rewriteEngine On
rewriteCond %{HTTP_HOST} !^$
rewriteCond %{HTTP_HOST} !^(www\.)?khpedia\.com$ [NC]
rewriteCond %{HTTP_HOST}<->%{REQUEST_URI} ^(www\.)?([^.]+).*<->/([^/]+) [NC]
rewriteCond %2<->%3 !^(.*)<->\1$ [NC]
rewriteRule ^(.+) /%2/$1 [L]
我的目录设置为
-root
--wiki
----指数.php
- 测试
现在,当我前往wiki.khpedia.com时,我找不到页面。当我前往wiki.khpedia.com/index.php时,它会前往wiki.khpedia.com/wiki/index.php。我也能以某种方式访问wiki.khpedia.com/test。如果它看起来不是很明显,我希望能够访问wiki.khpedia.com/index.php并查看wiki.khpedia.com/wiki/index.php,但不能在我的地址栏中找到。对不起,文本块,并感谢您的帮助。
嗯是的,这是有道理的,但我仍然不认为它是为我工作。 当我旅行wiki.khpedia.com时,出现内部服务器错误。但是,当我前往test.khpedia.com/rewrite.php时,可以看到root/test/rewrite.php。但由于某种原因,我也可以前往test.khpedia.com/test/rewrite.php并查看相同的文件。不知道这是否重要,但谢谢。 – Bryan792 2010-06-05 03:02:12
将a +更改为a *,应该注意“http://wiki.khpedia.com/”失败。我们可以尝试一个精心设计的rewritecond-fest(http_host,request_filename)来尝试重定向到'non-dir'子域(http://wiki.aa/wiki/index.php => http://wiki.aa /index.php),但我认为只要在子目录本身的.htaccess中检查它就简单多了。 – Wrikken 2010-06-05 18:42:08