godaddy共有ホストに2つのhtaccessファイルがあります。ドメイン名example.comとsshユーザーmyuserを呼び出します。
最初のhtaccessファイルはdocument-rootの下にあります。
Options -Multiviews
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ([^.]+.[^.]+)$
RewriteRule ^(.*)$ %1/$1 [QSA,L,E=DOMAIN:%1,E=URI:$1]
これはwww.example.com/my/pathをdocument-root / example.com / my / pathに変換します。
2番目のhtaccessはdocument-root / example.comディレクトリの下にあります。
Options -Multiviews
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/([^/]+)/(.*)$
RewriteCond %{DOCUMENT_ROOT}/%1/WebShop/Presentation/Http/View/public/%2 -f
RewriteRule ^(.*)$ WebShop/Presentation/Http/View/public/%2 [L]
RewriteRule ^(.*)$ entryPoint.php [QSA,L]
これは例を変形します。my / pathが既存の静的ファイルの場合は、com / my / path / document-root / example.com / WebShop / Presentation / HTTP / View / public / my / pathに移動します。それ以外の場合はdocument-root / exampleを呼び出します。 com / entryPoint.php。今私の問題は、2番目のhtaccessではrequest-uriが最初のhtaccessでは%1 / $ 1であるexample.com/my/pathではなく〜/ myuser // example.com / my / pathであることです。だからどういうわけかgodaddyはリクエストのURIの接頭辞としてsshユーザーを追加します。これは非常に奇妙であり、これは1〜2週間後に起こります。その前は、modの書き換えはうまくいっていました...
どのようにこれを修正するための任意のアイデア?
回答:
回答№1は0私はこれが解決できるとは思わない(そしてそうすべきではない)問題はサーバー設定にあるため、htaccessレベル。私はgodaddyにチケットを送りました、そして、彼らが2日以内にこれを直さないならば、私は彼らの生命維持を呼びます。 (ところで、私はこの問題だけではありません。)
Godaddyのサポートは最善ではない、私は彼らがこれを修正したいとは思わない。一時的な解決策はenv変数としてuriデータを送信し、request_uriの代わりにこれらのenv変数を使用することである。
編集:
彼らは2週間後にそれを修正しました...私が修正されたhtaccessファイルを使用するまでは。