2014-07-08 39 views
1

我试图禁用我部署在我的测试服务器上的网站与Capifony。Capifony禁用应用程序

maintenance.html文件上升,一切正常与网络:禁用/启用命令。

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

(我认为的检测中的应用_ *。PHP脚本维修档案,但不是唯一的感觉哈克,它不会禁止在网页/文件夹中的其他文件的访问。)

任何意见非常感谢。

回答

1

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

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

谢谢你的回答!我会检查出来并报告结果。 – ZeeCoder

+0

有一点调整它的工作,谢谢。 :) – ZeeCoder

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

+0

Apache和Capistrano的另一个例子:http://nebulab.it/blog/maintenance-page-with-apache-and-capistrano – webDEVILopers

+0

由于我问了这个问题,我实际上找到了一个非常好的解决方案:https:// github.com/lexik/LexikMaintenanceBundle – ZeeCoder

+0

太好了,谢谢!顺便说一句:我想我的第一次部署与网站:禁用和Capifony和Capifony尝试从我的最新版本,而不是创建一个新的maintenance.html文件上传。这是否曾经发生过?或者您是否在存储库中提供了该文件,并且只更改了生产服务器的htaccess? – webDEVILopers