MissingActionException (404)
Action PagesController::index.html() could not be found. MissingActionException thrown with message "Action PagesController::index.html() could not be found." Stacktrace: #3 MissingActionException in /var/www/vhosts/canortho.com/httpdocs/app/Vendor/cakephp/cakephp/lib/Cake/Controller/Controller.php:497 #2 Controller:invokeAction in /var/www/vhosts/canortho.com/httpdocs/app/Vendor/cakephp/cakephp/lib/Cake/Routing/Dispatcher.php:193 #1 Dispatcher:_invoke in /var/www/vhosts/canortho.com/httpdocs/app/Vendor/cakephp/cakephp/lib/Cake/Routing/Dispatcher.php:167 #0 Dispatcher:dispatch in /var/www/vhosts/canortho.com/httpdocs/index.php:99
Stack frames (4)
3
MissingActionException
/
Vendor
/
cakephp
/
cakephp
/
lib
/
Cake
/
Controller
/
Controller.php
497
2
Controller
invokeAction
/
Vendor
/
cakephp
/
cakephp
/
lib
/
Cake
/
Routing
/
Dispatcher.php
193
1
Dispatcher
_invoke
/
Vendor
/
cakephp
/
cakephp
/
lib
/
Cake
/
Routing
/
Dispatcher.php
167
0
Dispatcher
dispatch
/
var
/
www
/
vhosts
/
canortho.com
/
httpdocs
/
index.php
99
/
var
/
www
/
vhosts
/
canortho.com
/
httpdocs
/
app
/
Vendor
/
cakephp
/
cakephp
/
lib
/
Cake
/
Controller
/
Controller.php
 * @throws MissingActionException When actions are not defined and scaffolding is
 *    not enabled.
 */
    public function invokeAction(CakeRequest $request) {
        try {
            $method = new ReflectionMethod($this, $request->params['action']);
 
            if ($this->_isPrivateAction($method, $request)) {
                throw new PrivateActionException(array(
                    'controller' => $this->name . "Controller",
                    'action' => $request->params['action']
                ));
            }
            return $method->invokeArgs($this, $request->params['pass']);
 
        } catch (ReflectionException $e) {
            if ($this->scaffold !== false) {
                return $this->_getScaffold($request);
            }
            throw new MissingActionException(array(
                'controller' => $this->name . "Controller",
                'action' => $request->params['action']
            ));
        }
    }
 
/**
 * Check if the request's action is marked as private, with an underscore,
 * or if the request is attempting to directly accessing a prefixed action.
 *
 * @param ReflectionMethod $method The method to be invoked.
 * @param CakeRequest $request The request to check.
 * @return bool
 */
    protected function _isPrivateAction(ReflectionMethod $method, CakeRequest $request) {
        $privateAction = (
            $method->name[0] === '_' ||
            !$method->isPublic() ||
            !in_array($method->name, $this->methods)
        );
/
var
/
www
/
vhosts
/
canortho.com
/
httpdocs
/
app
/
Vendor
/
cakephp
/
cakephp
/
lib
/
Cake
/
Routing
/
Dispatcher.php
        $afterEvent->data['response']->send();
    }
 
/**
 * Initializes the components and models a controller will be using.
 * Triggers the controller action, and invokes the rendering if Controller::$autoRender
 * is true and echo's the output. Otherwise the return value of the controller
 * action are returned.
 *
 * @param Controller $controller Controller to invoke
 * @param CakeRequest $request The request object to invoke the controller for.
 * @return CakeResponse the resulting response object
 */
    protected function _invoke(Controller $controller, CakeRequest $request) {
        $controller->constructClasses();
        $controller->startupProcess();
 
        $response = $controller->response;
        $render = true;
        $result = $controller->invokeAction($request);
        if ($result instanceof CakeResponse) {
            $render = false;
            $response = $result;
        }
 
        if ($render && $controller->autoRender) {
            $response = $controller->render();
        } elseif (!($result instanceof CakeResponse) && $response->body() === null) {
            $response->body($result);
        }
        $controller->shutdownProcess();
 
        return $response;
    }
 
/**
 * Applies Routing and additionalParameters to the request to be dispatched.
 * If Routes have not been loaded they will be loaded, and app/Config/routes.php will be run.
 *
 * @param CakeEvent $event containing the request, response and additional params
/
var
/
www
/
vhosts
/
canortho.com
/
httpdocs
/
app
/
Vendor
/
cakephp
/
cakephp
/
lib
/
Cake
/
Routing
/
Dispatcher.php
 
        $request = $beforeEvent->data['request'];
        if ($beforeEvent->result instanceof CakeResponse) {
            if (isset($request->params['return'])) {
                return $beforeEvent->result->body();
            }
            $beforeEvent->result->send();
            return null;
        }
 
        $controller = $this->_getController($request, $response);
 
        if (!($controller instanceof Controller)) {
            throw new MissingControllerException(array(
                'class' => Inflector::camelize($request->params['controller']) . 'Controller',
                'plugin' => empty($request->params['plugin']) ? null : Inflector::camelize($request->params['plugin'])
            ));
        }
 
        $response = $this->_invoke($controller, $request);
        if (isset($request->params['return'])) {
            return $response->body();
        }
 
        $afterEvent = new CakeEvent('Dispatcher.afterDispatch', $this, compact('request', 'response'));
        $this->getEventManager()->dispatch($afterEvent);
        $afterEvent->data['response']->send();
    }
 
/**
 * Initializes the components and models a controller will be using.
 * Triggers the controller action, and invokes the rendering if Controller::$autoRender
 * is true and echo's the output. Otherwise the return value of the controller
 * action are returned.
 *
 * @param Controller $controller Controller to invoke
 * @param CakeRequest $request The request object to invoke the controller for.
 * @return CakeResponse the resulting response object
 */
    protected function _invoke(Controller $controller, CakeRequest $request) {
/
var
/
www
/
vhosts
/
canortho.com
/
httpdocs
/
index.php
if (php_sapi_name() == 'cli-server') {
    if ($_SERVER['REQUEST_URI'] !== '/' && file_exists(WWW_ROOT . $_SERVER['REQUEST_URI'])) {
        return false;
    }
    $_SERVER['PHP_SELF'] = '/' . basename(__FILE__);
}
if (!include(CAKE_CORE_INCLUDE_PATH . DS . 'Cake' . DS . 'bootstrap.php')) {
    $failed = true;
}
if (!empty($failed)) {
    trigger_error("CakePHP core could not be found. Check the value of CAKE_CORE_INCLUDE_PATH in APP/webroot/index.php. It should point to the directory containing your " . DS . "cake core directory and your " . DS . "vendors root directory.", E_USER_ERROR);
}
 
App::uses('Dispatcher', 'Routing');
 
$Dispatcher = new Dispatcher();
$Dispatcher->dispatch(
    new CakeRequest(),
    new CakeResponse()
);
 

Environment & details:

empty
empty
empty
empty
empty
Key Value
USER canortho
HOME /var/www/vhosts/canortho.com
FCGI_ROLE RESPONDER
REDIRECT_SCRIPT_URL /index.html
REDIRECT_SCRIPT_URI https://www.canortho.com/index.html
REDIRECT_PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY 0
REDIRECT_PASSENGER_DOWNLOAD_NATIVE_SUPPORT_BINARY 0
REDIRECT_HTTPS on
REDIRECT_STATUS 200
SCRIPT_URL /index.html
SCRIPT_URI https://www.canortho.com/index.html
PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY 0
PASSENGER_DOWNLOAD_NATIVE_SUPPORT_BINARY 0
HTTPS on
proxy-nokeepalive 1
HTTP_HOST www.canortho.com
HTTP_X_REAL_IP 35.171.159.141
HTTP_X_ACCEL_INTERNAL /internal-nginx-static-location
HTTP_CONNECTION close
HTTP_ACCEPT */*
HTTP_USER_AGENT claudebot
HTTP_REFERER http://www.canortho.com/index.html
PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
SERVER_SIGNATURE
Apache Server at www.canortho.com Port 443
SERVER_SOFTWARE Apache
SERVER_NAME www.canortho.com
SERVER_ADDR 74.208.121.160
SERVER_PORT 443
REMOTE_ADDR 35.171.159.141
DOCUMENT_ROOT /var/www/vhosts/canortho.com/httpdocs
REQUEST_SCHEME https
CONTEXT_PREFIX
CONTEXT_DOCUMENT_ROOT /var/www/vhosts/canortho.com/httpdocs
SERVER_ADMIN amir@msdg.com
SCRIPT_FILENAME /var/www/vhosts/canortho.com/httpdocs/index.php
REMOTE_PORT 55336
REDIRECT_URL /index.html
GATEWAY_INTERFACE CGI/1.1
SERVER_PROTOCOL HTTP/1.0
REQUEST_METHOD GET
QUERY_STRING
REQUEST_URI /index.html
SCRIPT_NAME /index.php
PHP_SELF /index.php
REQUEST_TIME_FLOAT 1711654294.5011
REQUEST_TIME 1711654294
empty
0. Whoops\Handler\PrettyPageHandler