как я могу скрыть сайт, основанный на cakephp, когда он находится на стадии разработки? [Дубликат]

У меня есть другая перспектива ответить на это.

При работе на разных уровнях, например, в приложении MVC, контроллеру нужны службы для вызова бизнес-операций. В таких сценариях контейнер инжекции зависимостей может использоваться для инициализации служб, чтобы исключить исключение NullReferenceException. Это означает, что вам не нужно беспокоиться о проверке нулевого значения и просто вызвать службы с контроллера, как будто они всегда будут доступны (и инициализированы) как одиночный или прототип.

public class MyController
{
    private ServiceA serviceA;
    private ServiceB serviceB;

    public MyController(ServiceA serviceA, ServiceB serviceB)
    {
        this.serviceA = serviceA;
        this.serviceB = serviceB;
    }

    public void MyMethod()
    {
        // We don't need to check null because the dependency injection container 
        // injects it, provided you took care of bootstrapping it.
        var someObject = serviceA.DoThis();
    }
}
4
задан Nick 12 March 2012 в 22:57
поделиться

3 ответа

здесь - страница быстрого и грязного обслуживания для cakephp

в общедоступном index.php

define('MAINTENANCE', 0); 
if(MAINTENANCE > 0 && $_SERVER['REMOTE_ADDR'] !='188.YOUR.IP.HERE')
{
require('maintenance.php'); die(); 
}

. Затем просто измените MAINTENANCE = 1, когда вы хотите занять свой сайт и

BONUS: Работает со всеми версиями тортов!

16
ответ дан jbrass 24 August 2018 в 18:05
поделиться

Более элегантным способом было бы добавить маршрут, перекрывающий любой другой, расположенный на самой вершине routes.php:

//Uncomment to set the site to "under construction"
Router::connect('/*', array('controller' => 'pages', 'action' => 'underConstruction'));

//any other route should be underneath 

. Если вы хотите добавить какое-либо условие, вы также можете сделать это здесь:

define('MAINTENANCE', 0); 
if(MAINTENANCE > 0 && $_SERVER['REMOTE_ADDR'] !='188.YOUR.IP.HERE')
    Router::connect('/*', array('controller' => 'pages', 'action' => 'underConstruction'));
}
3
ответ дан Alvaro 24 August 2018 в 18:05
поделиться

Нам нужно создать настраиваемый фильтр отправки, который CakePHP вам охватывает. проверьте ниже ссылку

http://josediazgonzalez.com/2013/12/13/simple-application-maintenance-mode/

0
ответ дан apurav gaur 24 August 2018 в 18:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: