0
我想将下面的HTACCESS文件转换成NGINX。我在使用Plesk GUI内置转换器的Plesk服务器上运行,它似乎不工作(由于SetEnvIf变量而不断生成错误)。HTACCESS到NGINX Conversoin
我试过的转换器都保留了在NGINX中不起作用的SetEnvIf变量。但是,我相信NGINX使用了一个“env”等价物,当我将它输入Plesk GUI中的NGINX Settings(它反过来写入我们主服务器配置中的nginx.conf文件)时,我得到另一个错误信息,指出我们不能在这个位置使用“env”变量。
这是我们需要转换的.htaccess文件:
<IfModule mod_setenvif.c>
SetEnvIf Authorization .+ HTTP_AUTHORIZATION=$0
</IfModule>
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /discuss/api/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
</IfModule>
这就是转换器,和其他人,创造:
if (!-f $request_filename){
set $rule_0 1$rule_0;
}
if (!-d $request_filename){
set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
setenv HTTP_AUTHORIZATION:$http_authorization;
rewrite /.* /index.php last;
}
什么是我们做错了(和转换器)? !提前致谢。
我明白你在说什么,但这在我们的情况下不起作用。我们需要将上述HTACCESS转换为NGINX等价物,以便通过Plesk NGINX GUI将其输入到NGINX配置文件中。它支持IP Board API调用。 –