だからapacheで私はフォルダを持っています:
www.domain.com/folder/folder1/index.php?word=blahblah
また、www.domain.com / folder / folder1 / blahblahにアクセスするユーザーが、URLを変更せずに上記のURLにリダイレクトされるようにしたいと思います。
したがって、folder / folder1 /に次の.htaccessがあり、完全に機能します。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?word=$1
だから私はnginxで同じ機能を実現したいと思っており、2つのコンバーターを使用しました: http ://www.anilcetin.com/convert-apache-htaccess-to-nginx/結果:
if (!-f $request_filename){
set $rule_0 1$rule_0;
}
if (!-d $request_filename){
set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
rewrite ^/(.+)$ /index.php?word=$1;
}
およびhttp://winginx.com/htaccessの結果は次のとおりです。
if (!-e $request_filename){ rewrite ^(.+)$ /index.php?word=$1; }
今、私は両方で試しましたが、どちらも機能しません。どちらかに挿入してみました
location / {
}
またはで
location /folder/folder1 {
}
またはで
location ~ \.php$ {
}
すべての場所で404エラーが発生します
nginxエラーは、「アップストリームから応答ヘッダーを読み取っているときにプライマリスクリプトが不明です」または「そのようなファイルまたはディレクトリがありません」のいずれかを報告します。
誰かが私を教えてくれませんか?
前もって感謝します!