前提
・デフォルトのurlはhttp://XX.XX.XX.XX/pc/test.php
・スマホから開いた際にhttp://XX.XX.XX.XX/pc/s/test.phpに遷移すること
詰まっている箇所
掲題の通りですが、nginx.confにてリダイレクト処理を追加しましたが、想定通りの処理がされずに困っています。
想定と結果
想定:スマホから開いた際にhttp://XX.XX.XX.XX/pc/s/test.phpに遷移すること
結果:遷移するがhttp://XX.XX.XX.XX/pc/のurlでダウンロード処理が走る。
nginx.confのリダイレクト処理内容
server { listen 80; listen [::]:80; server_name _; root /usr/share/nginx/html; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; #index.phpのlocation location /pc/ { location /pc/s/ { #empty } if ($http_user_agent ~* "(iPhone|iPod|Android.*Mobile)"){ return 301 http://XX.XX.XX.XX/pc/s/; } } # ★問題のlocation location ^~ /pc/test.php { if ($http_user_agent ~* "(iPhone|iPod|Android.*Mobile)"){ rewrite ^(.*)$ http://XX.XX.XX.XX/pc/s/test.php last; } #return 301 http://XX.XX.XX.XX/pc/test.php; } location ~.php$ { root /usr/share/nginx/html; fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; include fastcgi_params; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
スマホからのリダイレクトは正常に処理されるのですが、なぜか/pc/test.phpをPCから開こうとするとtest.phpのダウンロードが始まります。
なんでそんなことするんでしょうか?
設定に不備があることは間違いないと思うのですが、どのサイトも今回の事象に合致するものは
なさそうでした。
本件で、お心当たりのある方、いらっしゃいましたら助言いただけると助かります。
あなたの回答
tips
プレビュー