![nginx - 另一个重写或内部重定向循环 - drupal](https://linux22.com/image/597044/nginx%20-%20%E5%8F%A6%E4%B8%80%E4%B8%AA%E9%87%8D%E5%86%99%E6%88%96%E5%86%85%E9%83%A8%E9%87%8D%E5%AE%9A%E5%90%91%E5%BE%AA%E7%8E%AF%20-%20drupal.png)
从另一台服务器迁移站点时,出现了一些奇怪的问题。我对所有 drupal 站点都使用默认配置,但这个配置似乎不起作用。一些图像文件导致内部服务器错误 - 重写或内部重定向循环。该站点还没有域名,所以我正在使用服务器 ip 进行测试,这应该不是问题。当对某些默认 drupal 安装使用此配置时,一切都正常。我还使用 memcached 进行静态文件缓存,您可以看到这一点。如前所述,所有这些都应该正常工作。
这是我的配置:
server {
server_name SERVERIP;
root /var/www/;
listen 80;
listen [::]:80;
index index.php;
access_log /var/log/nginx/SERVERIP.access.log;
error_log /var/log/nginx/SERVERIP.error.log;
if (-f $request_filename) {
break;
}
# memcached
location ~* \.(jpg|png|gif|js)$ {
access_log off;
expires max;
set $memcached_key $uri;
memcached_pass memcached;
error_page 404 = @domain;
}
location / {
try_files $uri $uri/ @domain;
}
location ~* ^.+.(htm|html|jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js)$ {
access_log off;
expires max;
root /var/www/;
}
location @domain {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_NAME /index.php;
}
location ~ \.php$ {
try_files $uri $uri/ @domain;
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
}
如果有人能帮助我,我会非常高兴。提前谢谢。
问候
答案1
事实证明,当使用域名作为网站时,一切都正常。也许只是文档根目录设置不正确,或者我搞砸了其他事情。此外,一些奇怪的 URL 重写处于活动状态,我不得不将其关闭。