Comment faire pour déployer et exécuter un projet zend sur un serveur?

J'ai une question sur le déploiement de Zend projet sur un serveur. Sur localhost j'ai utilisé de l'hôte virtuel pour définir la racine du document à l'public/index.php dossier.

  • Comment dois-je déployer maintenant?
    J'ai copié l'ensemble de mon projet sur le serveur, mais il ne fonctionne pas comme tous mes chemins sont mauvais (comme tous sont mis en place par rapport au dossier public).
  • Que dois-je faire? Il est possible de définir tous mes chemins par rapport à la ma maison chemin sur le serveur? Comment puis-je rediriger mon application à n'importe quel contrôleur dans cette situation?
    Ou peut-être que j'ai juste besoin de créer un hôte virtuel sur le serveur mais je n'ai pas la permission de le faire:/?

J'ai besoin de quelques conseils, je vous remercie


Application.ini :

[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 0
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts/"


resources.view[] =

resources.db.isDefaultTableAdapter = true
resources.db.adapter = PDO_MYSQL
resources.db.params.charset = "utf8"
resources.db.params.host = HOST
resources.db.params.username = "p"
resources.db.params.password = "***"
resources.db.params.dbname = "p"

[staging : production]

[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1

[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1

Index.php:

<?php

//Define path to application directory
defined('APPLICATION_PATH')
    || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));

//Define application environment
defined('APPLICATION_ENV')
    || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));

defined('DESTINATION_IMAGES') || define('DESTINATION_IMAGES', './usersImages/');
defined('TRUE_STORY_EMAIL') || define('TRUE_STORY_EMAIL', '[email protected]');
defined('TRUE_STORY_NAME') || define('TRUE_STORY_NAME', 'True story team');

//Ensure library/is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../library'),
    get_include_path(),
)));

/** Zend_Application */
require_once 'Zend/Application.php';

//Create application, bootstrap, and run
$application = new Zend_Application(
    APPLICATION_ENV,
    APPLICATION_PATH . '/configs/application.ini'

);
$application->bootstrap()
            ->run();

.htaccss:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

phpinfo();

w Modules Chargés, j'ai mod_rewrite donc sans doute est permis.

-----------------------------

-------- MODIFIER 04.05.2011 -----

J'ai déployé le projet de nouveau sur le serveur et j'ai mis RewriteBase /~user2/Projet2/public

Et maintenant, le mappage d'URL fonctionne (probablement la première fois, c'était une erreur quand j'ai déployé, c'est pourquoi il ne fonctionnait pas).

Mais j'ai toujours des problèmes avec le projet. Quand je vais sur le contrôleur de Auth :

public function indexAction() {
        //action body

        $form = new Application_Form_Login();
        $request = $this->getRequest();
        if ($request->isPost()) {
            if ($form->isValid($request->getPost())) {
                try {
                    if ($this->_process($form->getValues())) {
                        $userDT = new Application_Model_DbTable_User();
                        $idUser = Zend_Auth::getInstance()->getIdentity()->id;
                        if ($userDT->isConfirmed($idUser)) {
                            $this->_helper->redirector->gotoRoute(
                                    array(
                                        'controller' => 'index',
                                        'action' => 'index'
                                    )
                            );
                        } else {
                            $form->setDescription('Your account is not confirmed!');
                            Zend_Auth::getInstance()->clearIdentity();
                            $this->_helper->redirector->gotoRoute(
                                    array(
                                        'controller' => 'Registration',
                                        'action' => "step",
                                        'idUser' => $idUser
                                    )
                            );
                        }
                    } else {
                        $form->setDescription('There was an error. Try to log in once again please');
                    }
                } catch (Exception $e) {
                    echo $e->getMessage();
                }
            }
        }
        $this->view->form = $form;
    } 

Sur la page je ne peux voir qu' :  et je ne sais pas ce que cela signifie comme je l'ai vérifier que la redirection dans différents Contrôleur de travail ce qui signifie que mon projet de voir le zend bibliothèques, donc je ne comprends pas pourquoi il n'a pas créer le formulaire dans la vue ?

La vue:

<?php $this->headTitle('Login'); ?>
<h1>Login</h1>
<?php echo $this->form->setAction($this->url()); ?>
Remarque: les Regarder dans un système comme Apache Ant pour l'automatisation de votre build & processus de déploiement.
Avez-vous copie Zend bibliothèques pour le dossier de votre projet?

OriginalL'auteur canimbenim | 2011-04-03