Capifony禁用该应用程序

时间:2014-07-08 13:07:56

标签: symfony capistrano web-deployment capifony

我尝试使用Capifony禁用我在测试服务器上部署的网站。

maintenance.html文件上升,web:disable / enable命令一切正常。

我唯一的问题是如何检测维护文件,并使用Symfony提供的.htaccess文件重定向到该文件。

(我想在app _ *。php脚本中检测维护文件,但不仅感觉很乱,它也不会禁止访问web /文件夹中的其他文件。)

非常感谢任何建议。

2 个答案:

答案 0 :(得分:1)

您可以通过网络服务器配置中的重写规则直接禁用访问权限。如果找到了maintenance.html文件重定向到它,或者另一个静态页面。对于Apache的htaccess,它将是这样的:

RewriteCond  %{DOCUMENT_ROOT}/web/maintenance.html  -f
RewriteRule  ^/(.+) /web/maintenance.html [QSA,L]  [L,QSA]

答案 1 :(得分:0)

我还没有测试过,但是Capifony lib的功能是这个片段:

ErrorDocument 503 /#{maintenance_basename}.html
RewriteEngine On
RewriteCond %{REQUEST_URI} !\.(css|gif|jpg|png)$
RewriteCond %{DOCUMENT_ROOT}/#{maintenance_basename}.html -f
RewriteCond %{SCRIPT_FILENAME} !#{maintenance_basename}.html
RewriteRule ^.*$ - [redirect=503,last]

https://github.com/everzet/capifony/blob/master/lib/symfony2/web.rb