【发布时间】:2016-12-22 20:24:24
【问题描述】:
我创建了一个 apache2 环境来执行 PHP Web 应用程序。
几乎一切正常。
这是我的应用结构:
/var/www/html/
- app/: PHP classes directory
- views/: PHP templates directory
- storage/: database and log stuffs directory
- static/: public directory for js, css and images
- index.php: Main script
- .htaccess
下面的 .htaccess 文件
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule \.(static/)$ - [L]
RewriteCond %{REQUEST_URI}::$1 ^(/.+)(.+)::\2$
RewriteRule ^(.*) - [E=BASE:%1]
RewriteRule ^(.*)$ %{ENV:BASE}index.php [NC,L]
</IfModule>
到 index.php 的重定向工作正常。我想只允许访问目录 static/ 并拒绝任何其他请求并将其重定向到 index.php。
这可能吗?
【问题讨论】: