使用nginx而不是apache设置Joomla时出现随机错误

使用nginx而不是apache设置Joomla时出现随机错误,nginx,debian,php,joomla3.2,Nginx,Debian,Php,Joomla3.2,我正在尝试在我的服务器上建立一个joomla 3实例,我已经在使用nginx和owncloud以及博客平台ghost 我的第一次尝试实际上相当成功,只是在最后一个安装步骤(创建配置文件)中失败了。我认为这是由于权限错误,无法创建该文件。我编写了一个简短的测试脚本,以验证php5 fpm是否在该文件夹中具有写入权限,并且它工作正常 在几次失败的重试和没有日志文件之后,我决定删除该目录并再次下载Joomla。从那时起,一切都不起作用。每次打开zip(新下载或相同)后,我都会遇到以下任意错误情况:

我正在尝试在我的服务器上建立一个joomla 3实例,我已经在使用nginx和owncloud以及博客平台ghost

我的第一次尝试实际上相当成功,只是在最后一个安装步骤(创建配置文件)中失败了。我认为这是由于权限错误,无法创建该文件。我编写了一个简短的测试脚本,以验证php5 fpm是否在该文件夹中具有写入权限,并且它工作正常

在几次失败的重试和没有日志文件之后,我决定删除该目录并再次下载Joomla。从那时起,一切都不起作用。每次打开zip(新下载或相同)后,我都会遇到以下任意错误情况:

  • 我被重定向到
    installation/installation/index.php
    而不是
    installation/index.php
  • 我有关于丢失php文件的错误
  • 我有关于缺少php类的错误:
    • 日本应用库
    • JApplicationWebClient
    • 某个视图类
每次解压并重新下载后,即使我没有更改nginx或php5 fpm配置中的任何内容,错误也会发生更改

下载并解压缩文件后,我使用以下命令正确设置Joomla目录:

  • sudo chown-R joomla_用户。
    • 可选,只有当我与另一个用户下载并解压缩了zip时——你看,我真的尝试了所有可能的组合
  • sudo chgrp-R www-data.
    • nginx作为www数据运行,但joomla_用户不在www数据组中
    • 文件和文件夹仅对nginx可读,但不可写。我认为这不是一个问题,因为无论如何,编写都是由php完成的
  • sudo chmod-R g+s.
    • 确保nginx能够读取所有未来上传的文件
我在可用站点(和已启用站点)中的nginx配置如下所示:

server {
    listen 80;
    server_name joomla.server_url;

    root /home/joomla_user/www/joomla3;
    index index.php index.html index.htm default.html default.htm;
    # Support Clean (aka Search Engine Friendly) URLs
    location / {
            try_files $uri $uri/ /index.php?$args;
    }

    # deny running scripts inside writable directories
    location ~* /(images|cache|media|logs|tmp)/.*\.(php|pl|py|jsp|asp|sh|cgi)$ {
            return 403;
            error_page 403 /403_error.html;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php5-fpm-joomla_user.sock; 
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    # caching of files 
    location ~* \.(ico|pdf|flv)$ {
            expires 1y;
    }

    location ~* \.(js|css|png|jpg|jpeg|gif|swf|xml|txt)$ {
            expires 14d;
    }

}
php5 fpm池配置基本上是默认配置的复制粘贴,具有更改的套接字名称和名称

总之,php5执行工作正常,权限也允许创建和写入文件(至少在我检查的目录中),但是在安装开始时没有完成之后,现在每次解压joomla3 zip文件后,我都会收到随机错误消息,即使我下载id fresh(并通过wget直接连接到服务器)从他们的网站()

有人有在nginx上使用Joomla的经验吗?知道我如何消除这些错误并使其运行吗

更新:

我的PHP版本是5.4.4:

PHP 5.4.4-14+deb7u8 (cli) (built: Feb 17 2014 09:18:47) 
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies

同样在昨天,我与Joomla开发人员讨论了这个问题,他们提出了目录权限问题,但即使在Joomla目录中执行了
chmod-ru+rw.
,它仍然存在。

我没有设法消除错误,但得到了使用.Running
/domain.sh add Joomla Joomla\u SERV的建议ER_URL
创建了一个包含所有必要目录的新配置。nginx配置还添加了一个SSL部分,在我的案例中引用了错误的证书文件。修复后,Joomla再次启动并运行

我仍然有第一个问题-Joomla没有完成安装。这是由于太短的
fastcgi\u read\u超时(默认为60秒)。将其更改为几分钟后可以正常工作

我最后更改的配置是joomla的nginx配置:

location / {
        try_files $uri $uri/ /index.php?$args;
}
改为

location / {
        try_files $uri $uri/ /index.php?q=$request_uri;
}

正如。

中所述,您是否碰巧使用了PHP5.3?否,5.4-请参阅更新的问题,了解
PHP的输出--version