2013-04-11 44 views
1

以前,服务器允许我引用任何不带扩展名的PHP文件。我试过的mod_rewrite在URL中呈现PHP文件作为无扩展名文件或文件夹

不幸的是,看起来像我的htaccess-fu已经耗尽,并且我无法让它与子文件夹一起工作。我可以重定向staticfilename.css,但不是static/filename.css


问:给定(虚拟)文件夹static/和PHP脚本static.php,它可以处理static.php/filename.css,什么是最简单的方式获得的Apache2加载static.php/filename.css的URL static/filename.css

.htaccess - 只有解决方案是优选的。但是,如果需要,我也可以进行虚拟主机特定或服务器范围的更改。


在帮助<VirtualHost>把这个,但我觉得很糟糕具有这样的节是具体到一个单一的网站,到单个文件。

RewriteRule ^(.*)/static/(.*)$ $1/static.php/$2 [P] 

因此,我还是很想找出一种方法来重定向其他类似的文件:一个脚本,我叫davrun.php,例如,处理WebDAV的不同的站点在同一台服务器上,并在修复这个无论是更普遍的方式(或以每个可用的方式)将允许在该脚本中提供更自然的路径。

+0

'^重写规则(。*)/静态/(.*)$ $ 1 /静态的。 php/$ 2' - OMG!为什么你需要有一个PHP文件来提供静态内容 – 2013-04-11 10:33:26

+0

@silentboy一段旧的代码 - 一个黑客来添加适当的缓存标题。无论如何,如上所述,这比静态文件提供的功能更多:WebDAV浮现在脑海。 – 2013-04-11 11:31:05

回答

0

你试过这个吗?

RewriteEngine on 
RewriteRule ^static/(.*)$ /static.php/$1 [L] 

(我想你知道如何使用/static.php/filename.css加载static.php)

+0

是的,我试过了 - 这不好。 – 2013-04-11 09:49:35