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調用。 –