2012-02-06 10 views
1

私のサーバー上のサブドメインでうまくプレイするためにzendフレームワークを取得する際に問題が発生しました。私はubuntu 11.10上で動作するLAMPスタックを持っていますが、ゾーンレコードが定義されているところで動的DNSサービスも使用しています。サブドメインを持つZendフレームワーク

DNS: 一つの会社に登録されており、ここでは、ダイナミックDNSのネームサーバに自分のドメイン名を指すので、基本的に私のDNSのような設定です。

mydomain.com 000.00.0.0 
www.mydomain.com 000.00.0.0 
*.mydomain.com 000.00.0.0 <-- wildcard to catch all subdomains 

Apacheの設定:私はタイプAの3つの定義されたゾーンレコード持っているダイナミックDNSホストと

/etc/apache2/sites-available

を:: /私は私のデフォルトを設定している サイト対応と別の仮想ホスト

/var/www: 私はmydomain.com/pubを持っていますLICそのドキュメントルートとしての/ var/www /のパブリックフォルダ

/var/www/mysubdomain:私はmysubdomain.mydomain.comそのルートとして/var/www/mysubdomain/publicフォルダを使用している

は私が私が正しくwww.mydomain.comへのリクエストを処理するために、このすべてが正しくセットアップだと思う、と私はまた、www.mysubdomain.mydomain.comへのリクエストを正しく提供します。

が、私は次のメッセージをサーバーから見つからない404を発行していますwww.mysubdomain.mydomain.com/:controllerまたはwww.mysubdomain.mydomain.com/:controller/:actionのような要求を行うとき:

The requested URL /controller/action was not found on this server.

イムは、これは私の.htaccessの問題です思考セットアップ

私の.htaccessで次のよう:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule .* index.php 

現在、私がアクセスしようとしているアプリケーションがセットアップされていて、www.mysubdomain.comのような通常のドメインとしてアクセスされている場合はすべて動作します。

答えて

1

私は、次の.htaccessを使用しています:

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

はたぶん、あなたは試してみて、結果を提供することができます。

+0

私が正しく覚えていれば、その.htaccessで500内部サーバーエラーが発生するのは、デフォルト推奨の.htaccess for zf – John

+0

<?php phpinfo();を使用してtest.phpを配置できますか? ?>を/ publicフォルダに置き、アクセスできるかどうか確認してください。それともあなたも500を手に入れていますか? – Goeran

+0

httpd.confの仮想ホストに 'AllowOverride FileInfo'を設定しましたか? .htaccessファイルに書き換えエンジンを有効にする権限を与えるために必要です。 – Goeran

関連する問題