2013-02-10 51 views
-1

我正在尝试制作一个上传脚本,并且我想让所有空目录上显示相同的文件/页面(以及填充的目录)。 这个文件/页面将被显示,并将作为任何其他文件/页面,但它实际上不会在那里。我认为.htaccess文件可能能够做到这一点。.htaccess如何在没有页面在同一目录中的情况下显示页面?

一个例子是: 当您创建一个目录时,您上传的文件将可用于上传到您的新目录,但它不会在那里让您意外覆盖该目录文件,而上传。这也将节省空间,这取决于你必须制作多少个目录。

如果每次制作目录时制作文件的副本,并且制作十亿个目录,那么制作十亿个文件......即使每个文件大小为1千字节,也是如此!

我的策略需要1个文件,并使其对于子目录具有通用性,而实际上不会占用比一个上载文件更多的空间。

顺便说一下, 我使用的是标准GoDaddy托管的Linux服务器。 它有PHP 5.3的。

我希望所有低于这个.htaccess文件的目录中有这样的“规则”,但不是说.htaccess文件所在的目录。

+0

到目前为止,您使用.htaccess进行了哪些尝试?请包括您遇到问题的规则。另外,这个问题不是很清楚......你是否试图创建一个索引页面,以便如果任何人只加载一个没有文件的目录路径,该索引页面将显示,而不管路径?换句话说'http:// www.example.com/directory1 /'或'http:// www.example.com/directory2 /'会分别加载'http:// www.example.com/defaultindex.html' ? – 2013-02-10 03:20:28

+0

我没有用.htaccess试过任何东西,只是因为我不知道如何开始。是的,无论路径如何,都会显示索引页面。虽然,主目录有很多目录,非常像用户,你可以点击(我已经有了这个设置)。 – 2013-02-10 14:03:04

回答

0

要有目录路径(不带结束文件名)都显示相同的索引页面,例如:http://www.example.com/directory1/http://www.example.com/directory2将每个负载http://www.example.com/defaultindex.html,你可以试试下面的:

RewriteRule ^[^.]+$ /defaultindex.html [L] 

这是说,以匹配不包含点的任何路径(因此不不以.html,.jpg等结尾)和将其重写到文件example.com/defaultindex.html(该文件必须存在于此位置)。

这是一个非常普遍的规则,显然会匹配很多东西,但这似乎是你想要的。如果您需要排除任何特定的目录路径,则需要添加RewriteConds或使规则更具体,但这应该是一个起点。

+0

感谢您的帮助!这正是我需要的!现在我几乎拥有我需要的一切!我现在需要的是具有全局php功能!我可以在google中找到这个:)谢谢!这里是我的代码: 'RewriteRule^[^。] + $/blah/blah ..../submitfile.php' – 2013-02-10 21:48:18