3

这是我在网络服务器上的文件结构:

DOCUMENT_ROOT/
  foo/
    www/
    .htaccess
  bar/
  index.php

foo/.htaccess如果我想将所有内容从www.myserver.com/foo/www/to重定向,我应该写什么www.myserver.com/foo/

我试过这个:

RewriteEngine On
RewriteRule ^(.*)$ /www/$1 [L,NE]

但始终显示错误 404。我尝试使用 RewriteBase 进行详细说明也没有成功。

非常感谢

PS 当www/.htaccess在 DOCUMENT_ROOT 中时,它可以正常工作。但是当我把它们放到子文件夹中时,总是得到错误 404 :-(

4

1 回答 1

3

是的,我想去http://www.myserver.com/foo/拿东西/foo/www

如果您的 htaccess 文件在其中,这将永远不会起作用,/foo/www因为除非请求是针对内部的东西,否则它将不会生效/foo/www。该请求只是/foo为了忽略该.htaccess文件。您需要将.htaccess文件移动到文档根目录,将其更改为:

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/foo/www
RewriteRule ^foo/(.*)$ /foo/www/$1 [L]

或将其移动到/foo目录,将其更改为:

RewriteEngine On
RewriteBase /foo
RewriteCond %{REQUEST_URI} !^/foo/www
RewriteRule ^(.*)$ www/$1 [L]
于 2012-08-29T09:28:34.937 回答