Nginx重写-处理时发生错误重写或内部重定向周期

问题描述

请帮助我! 我想将搜索引擎重定向到特定页面,但保持显示robots.txt。 Robots.txt可以访问且正确,但是如果我打开/页面,则会显示500错误而不是HTML文件。

错误是:在处理“ /file.html”时进行重写或内部重定向循环

我的nginx配置是:

   server {
  access_log /var/log/nginx/access.log main;
  error_log  /var/log/nginx/vhost-error_log warn;
  listen 80;
  listen 443;
  server_name www.site.biz site.biz;
 
  location / {
if ($http_user_agent ~* ".*Googlebot.*"){
    set $RW T;
}

# If robots.txt - do NOT redirect

if ($request_uri ~ .*.robots.*) {
     return 200 "User-agent: *\nAllow: /\nHost: https://www.site.biz";
    set $RW F;
    }

# If any other page - redirect to html file

    if ($RW = T)
{
rewrite ^ /file.html;
}
   error_page 503 /503.html;
   error_page 500 /500.html;
   client_max_body_size    10m;
   client_body_buffer_size 128k;

   proxy_send_timeout   90;
   proxy_read_timeout   90;

   proxy_buffer_size    4k;
   proxy_buffers 80 32k;
   proxy_busy_buffers_size 64k;
   proxy_temp_file_write_size 64k;
   proxy_connect_timeout 10s;

   proxy_redirect  off;

   proxy_pass   http://127.0.0.1:8083;

   proxy_set_header   Host   $host;
   proxy_set_header   X-Real-IP  $remote_addr;
   proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

请帮助。谢谢您的时间和关注。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)