なぜmy.htaccessファイルに残念フルサーバーの経路ではなく相対ですか。

StackOverflow https://stackoverflow.com/questions/2542820

質問

ことがなかった問題cakePHP前にその奇このサーバーのリダイレクトに出ます。htaccessファイルの行動に奇.

CakePHPを使mod_rewriteます。htaccessファイルへのリダイレクトを要求し、独自のwebrootウェブルートフォルダにまとめた。問題は、リダイレクトは、間違ったパスが404エラーになります。私CakePHPアプリケーションに格納された物件ディレクトリは、.htaccessファイルに以下の

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule    ^$ app/webroot/    [R=301,L]
    RewriteRule    (.*) app/webroot/$1 [R=301,L]
</IfModule>

(※R=301の原因となる外部へのリダイレクトできま何が起こっているのかを知らです。べきであるかを省略するこのフラグを行い、リダイレクト内部の透明性をユーザー)

このはずなのにリダイレクト要求から http://hostname.com/~username/listings/http://hostname.com/~username/listings/app/webroot/ しかし、より追加するだけ"app/webroot/"最後では、追加のフルサーバのパス /home/username/public_html/listings/app/webroot/ となり、最終URL http://hostname.com/home/username/public_html/listings/app/webroot/ ことが明らかである誤ントが404エラーになります。

のストーン-水晶(クリスタルを共有ホスティングアカウントでは限界にできることは何かを設定します。見たことがありませんこのような事態を前に、私的に考えるとおかしいからホスト側の"とんとことって~えいとくいかもご提案していき、開催しています。

役に立ちましたか?

解決

プリンタを使用できるであろうとの見方を ページ のcakephpの本:

多くのホスティングサービス(GoDaddy,1and1)、webサーバからユーザーディレクトリが既に使用できます。mod_rewriteをインストールする場合CakePHPには、ユーザーディレクトリhttp://example.com/~ユーザ名/cakephp/又はその他のURLの構造が既に利用mod_rewriteする必要がありまRewriteBaseを追加算になります。htaccessファイルCakePHP用途/.htaccess,/app/.htaccess,/app/webrootウェブルート/.htaccess).

私は展開されCakePHPからの私のプロファイルのpublic_htmlフォルダです。った3と同じです。htaccessファイル。だけで追加 RewriteBase /~username/ のとします。htaccessファイルを直後 RewriteEngine on!

他のヒント

メインファイルからの.htaccessを削除してください...それは

私のために働きました

これは、(uolhost共有ホストを使用して)非常に簡単だっます:

編集の両方の.htaccessファイルます:

/webroot/.htaccess

/。htaccessの

次の行を追加します。 でRewriteBase /

ここで全体/webroot/.htaccessファイルがあります

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top