私はこのサイトを徹底的に検索していますが、これについてもグーグルではありますが、無駄です。 私はMac OS XでApache2 + PHPを使用しています。 すべての設定を変更していないので、すべて正常に動作するだけです。これはhttp://localhost/~milad/mysite/*
にあるすべてのファイルに対してだけで正常に動作しMac OS X Lion(10.7)のApache2の相対パスに書き直してください。Lion(10.7)
<IfModule mod_rewrite.c>
Options +FollowSymLinks
Options +Indexes
RewriteBase /~milad/mysite/
RewriteEngine On
RewriteRule ^$ index.php?:url [L,QSA] #Handling tail with no parameters
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*?)$ index.php?:url=$1 [L,QSA]
</IfModule>
: はここに私の.htaccess
ファイルです。 しかし、.htaccess
ファイルを自分のインストールの詳細と独立させたい、つまり自分のコードにRewriteBase ...
行を含める必要がないようにします。
しかし、私がその行を削除すると、Apacheは理解できないURLにマップしようとします。私は何を得る は次のとおりです。
に/Users/milad/Sites/newave/index.phpは、このサーバー上に見つかりませんでした要求されたURLが見つかりません。
index.php
ファイルがそのURIが指し示す場所にあるので、ちょっとばかげています。 とにかく、index.php
の代わりに/index.php
に書き直そうとすると、http://localhost/index.php
に書き換えられています。それでは、どうやって相対パスだけを使うことができないのですか、あるいは./index.php
を使用してください(はい、これも試しました)。
洞察力があれば幸いです。
です。htaccessファイルはドキュメントルート(http:// localhost/points to)または/〜milad/mysite /がどこにあるのでしょうか? –
後者です。 '/〜milad/mysite /'にあります。 –
具体的には、 '/ Users/milad/Sites/mysite/.htaccess'にあります。 –