在nginx中的域的子文件夹中安装postfixadmin

在nginx中的域的子文件夹中安装postfixadmin,nginx,subdirectory,Nginx,Subdirectory,我需要安装为nginx中托管的域的子文件夹 换句话说,我正在尝试使用 从物理上讲,网站内容的存储方式如下: example.com网站位于/var/www/example /var/www/Postfixadmin中的Postfixadmin文件 我已尝试在example.com的服务器部分添加此内容: location ~ /posfixadmin/ { root /var/www; index index.php; include snippets/fastcgi

我需要安装为nginx中托管的域的子文件夹

换句话说,我正在尝试使用

从物理上讲,网站内容的存储方式如下:

  • example.com网站位于/var/www/example
  • /var/www/Postfixadmin中的Postfixadmin文件
我已尝试在example.com的
服务器
部分添加此内容:

location ~ /posfixadmin/ {
    root /var/www;
    index index.php;
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
  }
以上部分工作正常,php脚本执行正确,但未加载
/var/www/postfixadmin/css
/var/www/postfixadmin/images
下的css和图像文件

我已经检查了生成的html代码,postfixadmin中指向css和图像文件的链接是使用相对路径调用的,如下所示:

href="css/default.css"
 location /postfixadmin/css/ {
    root /var/www/postfixadmin;
  }
我认为nginx试图从中获取css文件,而不是,这就是它失败的原因,我尝试了以下方法:

href="css/default.css"
 location /postfixadmin/css/ {
    root /var/www/postfixadmin;
  }
但上述方法不起作用


你知道怎么解决这个问题吗?提前谢谢

我知道这是一个老话题,但仍然是:不要在“location”块中使用“root”。资料来源:

目前我使用的是Postfixadmin3.2(它将所有面向公众的内容移动到了“public”子目录)。请注意,我已经在其他地方定义了fastcgi_通道,因此该位不直接适用

location /postfixadmin {
    alias /usr/local/www/postfixadmin/public;

    location ~ ^(.+\.php)(.*)$ {
       fastcgi_pass   php;
       fastcgi_index  index.php;
       fastcgi_param  SCRIPT_FILENAME $request_filename;
       include        fastcgi_params;

       fastcgi_split_path_info ^(.+\.php)(.*)$;
       fastcgi_param PATH_INFO $fastcgi_path_info;
       fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;

       fastcgi_read_timeout 180;
       fastcgi_buffers 4 256k;
       fastcgi_buffer_size 128k;
    }

    location ~ \.php {
       include        /usr/local/etc/nginx/fastcgi_params;
       fastcgi_param  SCRIPT_FILENAME $request_filename;
       fastcgi_pass   php;
       fastcgi_index  index.php;
    }
    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    location ~ /\.ht {
        deny  all;
    }
}