Web サイトに Zend Framework を実装する際に問題が発生しています。これは派手なアプリケーションではなく、Zend のいくつかの検証クラスと Zend_File_Transfer_Adapter_Http を使用してファイルをサーバーにアップロードするだけです。それらのどれも機能しません。質問は次のとおりです。サイトのフォルダー構造を指示するために htaccess ファイルを作成する必要があること、および mod_rewrite を有効にする必要があることを読みました。プロバイダーのコントロール パネルは非常に情報量が少ないため、mod_rewrite を確認する方法がわかりません。
とにかく、次のように Zend ライブラリを含めるだけで十分だと思いました。
$libreria = $_SERVER['DOCUMENT_ROOT'];
$libreria.='Zend/ZendFramework/library';
set_include_path(get_include_path().PATH_SEPARATOR.$libreria);
require_once('Zend/Loader/Autoloader.php');
Zend_Loader_Autoloader::getInstance();
しかし、明らかにそうではありません。だから私が持っている別の質問は次のとおりです: ¿Autoloader を別の方法でインスタンス化する必要がありますか?名前空間を指定する必要がありますか$loader = Zend_Loader_Autoloader::getInstance(); $loader->registerNamespace(something);
?ページ。
最後に、いくつかのスクリプトでクラス PHPMailer を設定してユーザー入力を処理しました。Zend Framework へのパスが正しく含まれているように見えるときはいつでも、ページで 500 Internal Server エラーがスローされますが、パスを間違って記述しても発生しません。 (これは別の問題です。たとえば$libreria='Zend/ZendFramework/library';
、入力を検証するために設定したすべての条件が何を書いても失敗することがわかるため、ドキュメントに相対的なパスを設定すると機能し ないと思います。
最後の質問は、PHPMailer には Zend Framework との非互換性がありますか? 質問して申し訳ありませんが、私は初心者であり、PHPMailer クラスを確認しましたが、互換性のないものは見つかりませんでした。質問する必要があります。
誰かが喜んで助けてくれるなら、事前に感謝します
また、この Web サイトをローカル サーバーでテストしたところ、問題なく動作することも付け加えておく必要があります。問題はリモート サーバーにあります。
また、私はこの記事をここで読みました。それは私が探しているものです。それによると、新しい演算子を使用して Zend の標準クラスを参照できるはずです。しかし、リモートサーバーではこれを行うことができず、ローカルでのみ実行できます。
もう少し検索すると、この同じサイトでZend のインストールが失敗する可能性のある原因について読んだので、質問を明確にすることができます。まず、これらの条件のどれも失敗していないと思いますが、 「プロバイダーのリモート サーバーで mod_rewrite を確認できませんでした。次に、htaccess ファイルが空であるため、リダイレクト ルールがありません (Zend Framework が不適切な htaccess と対話する際の問題を破棄する必要があります。間違っている場合は修正してください)。 3 つ目は、php.ini ファイルにアクセスできないことです。それで、なにかお手伝いできますか?私は午前中ずっとこれに苦労しており、何が問題なのか手がかりがないので、どんな提案も受け入れられます。