nginx+vbulletin500登录时出错


nginx + vbulletin 500 error on login

所以,我很快就会推出一个社区,一个正在运行论坛软件vBulletin的社区。但我有一个奇怪的问题,我不知道是什么。

我在电脑上本地设置了vbulltin论坛。我的环境是nginx 1.9.13, php 5.6.9, vBulletin 4.2.3.

我以完全相同的方式设置web服务器,我打包了nginx目录并将其上传到服务器。已下载php 5.6.20(最新版本)。导入了数据库,网站开通了,很棒。我去登录,我得到500错误。错误日志中也没有存储任何内容。我尝试了不同版本的php,甚至是与我的本地静态500错误相同的版本。

我的nginx配置

worker_processes  4;
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;
events {
    worker_connections  8096;
    multi_accept on;
    #use epoll; # not supported on windows
}
worker_rlimit_nofile 40000;
http {
    include       mime.types;
    default_type  application/octet-stream;
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
    access_log off;
    error_log I:''webServer''nginx''logs''error.log;
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 15;
    types_hash_max_size 2048;
    #server_tokens off;
    server_names_hash_bucket_size 64;
    gzip on;
    gzip_static on;
    gzip_min_length 1024;
    gzip_proxied expired no-cache no-store private auth;
    gzip_types text/html text/plain text/css text/xml text/javascript application/atom+xml application/javascript application/json application/rss+xml application/xml+rss application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/svg+xml image/x-icon text/x-component;
    open_file_cache          max=2000 inactive=20s;
    open_file_cache_valid    60s;
    open_file_cache_min_uses 5;
    open_file_cache_errors   off;
    server {
        listen       80;
        server_name  localhost;
        root "I:''webServer''nginx''www''root";
        charset utf-8;

        location / {
            rewrite ^/((urllist|sitemap_).*'.(xml|txt)('.gz)?)$ /dbseo_getsitemap.php?sitemap=$1 last;
            try_files $uri $uri/ /dbseo.php?$args;
            #try_files $uri $uri/ /index.php?$query_string;
            index  index.html index.htm index.php;
        }
        error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   www;
        }
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ '.php$ {
            fastcgi_pass   127.0.0.1:9123;
            fastcgi_index  index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include        fastcgi_params;
            fastcgi_intercept_errors off;
            fastcgi_buffer_size 128k;
            fastcgi_buffers 256 16k;
            fastcgi_busy_buffers_size 256k;
            fastcgi_temp_file_write_size 256k;
            fastcgi_connect_timeout 60;
            fastcgi_send_timeout 60;
            fastcgi_read_timeout 60;
        }
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /'.ht {
            deny  all;
        }
    }
    client_max_body_size 20M;
}

唯一主要不同的是操作系统(windows server 2008 r2)和MySQL数据库,而MySQL也没有显示错误。

我认为问题可能是所有POST请求,但由于我唯一可以猜测的POST请求是登录,我无法验证它是否与login.php或所有POST请求隔离。

更新:我让它工作了,我忘记启用php_opensl.dll扩展。vBulltin使用此来优化密码。

张贴以供其他可能遇到此问题的人参考。