2013-03-15 15 views
5

私はZF2を使い始めました。私はZend Skeleton Applicationと非常に混同しています。現在の状況のURLで は、次のようになります。Zend Framework 2実世界のアプリケーションファイル構造

http://localhost/zf2/public/ 

などアプリケーションという名前のモジュールのために見えます:

http://localhost/zf2/public/Application/ 

とアクションは、モジュール名の後になります。 私は管理パネルユーザーパネルでCMSを作成したいです。 そして、私はのようになり、ユーザーのための私のURLをしたい理由がある:

http://localhost/zf2 

や管理者のためのような:だから

http://localhost/zf2/admin/Module Name/Actions 

、私の質問は、どのように私はこのようなURLを作成することが出来るのですか?

+0

あなたはルータを使って試しましたか? zf2について知りませんが、これは確かにzf1のzendルータで行うことができますか? – codisfy

+1

http://framework.zend.com/manual/2.1/en/modules/zend.mvc.routing.htmlは基本を提供します。 – RockyFord

答えて

1

あなたのURLの例は、パブリックディレクトリとコントローラルートを混乱させるようです。通常、次のようなURLはありません。

http://localhost/zf2/public/ 

代わりに、通常は仮想ホストを使用する必要があります。これを行うには数多くの方法がありますが、一般に、名前付き仮想ホストが必要な場合は、カスタムポートまたはカスタムホストエントリのいずれかになります。その後、公衆へのあなたのURLは、これら2つのオプションのいずれかのようになります。あなたは、開発環境では、PHP 5.4を使用している場合

http://localhost:9000/ 

または

http://myapp.local/ 

、ホストを起動するにははるかに最も簡単な方法PHP 5.4の組み込みサーバーを使用することです。あなたのプロジェクトのルートから、コマンドラインで次のようにそれを起動する(これは公開ディレクトリローカルホストのポート9000上の一時的なWebサーバのWebルートになります):

php -S localhost:9000 -t public 

あなたのWebサーバの設定をしたらあなたはスケルトンアプリでフル・リテラルパスでIndexControllerのデフォルトのindexActionを入れたい場合は、それが見えます

http://localhost:9000/some-module/some-controller/some-action 

:整理、スケルトンアプリが自動的にURLのルート(デフォルトでは)このように解釈しますこのように:

http://localhost:9000/application/index/index