0
從apache遷移時,nginx出現問題。nginx能否通過基本身份驗證來保護uri(在重寫前)?
所有的uris都被重寫到/index.php,並且^/admin uri應該被基本的auth保護。
與Apache的時候,我將其配置如下:
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php [L]
<Location ~ "^/admin">
AuthType Basic
AuthName "Restricted"
AuthUserFile /etc/apache2/httpd.passwd
Require valid-user
</Location>
這是nginx的配置,但它不工作:
if (!-f $request_filename) {
rewrite^/index.php last;
}
location ~ \.php$ {
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
}
location ~* /admin/ {
auth_basic "admin login";
auth_basic_user_file /etc/nginx/httpd.passwd;
}
我怎麼能做到這一點的nginx的?
位置^〜/ admin {0} {0} {0} auth_basic「管理員登錄」; auth_basic_user_file /etc/nginx/httpd.passwd; if(!-f $ request_filename){ rewrite^/index.php break; } 包括fastcgi.conf; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; } location〜\ .php $ { include fastcgi.conf; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; } – Cofyc