私の英語は下手です。申し訳ありません。
plesk パネル付きの Windows サーバーを購入しました。FTP python スクリプトにロードします。サイトはpythonで書かれているためです。
サイトに入ると「Authentication Required」と表示されます。でも、この窓が見たい。誰もがサイトに入り、cgi スクリプトを実行できるようにしたいと考えています。
どうすればこれを作ることができますか?
あなたの質問を書き直しますか?
cgi は http 応答を stdout に出力します。まず、ヘッダーを取得する必要があります...ヘッダー「Authorization」が存在する場合、そこからログインとパスワードをデコードできます。そのようなヘッダーまたはパスワードが無効でない場合は、次のことを行う必要があります: 401 応答を送信する 'Basic realm=\"Message\"' を含む 'WWW-Authenticate' ヘッダーを送信して、基本認証を行います。Digest、Ntlmなども可能
ブラウザが 401 応答を受け取った場合、(ajax の場合でも) ユーザーにパスワードを要求し、サーバーによって要求された方法でログインとパスワードをエンコードし、「Authorization」ヘッダーを使用して再度要求を送信します。
CGI コード サンプルではなく、HTTPServer のデコレーター、BaseHTTPRequestHandler
def login_required(f):
def authenticate(self,*args,**kwargs):
    if conf.get('noauth'):
        return f(self,*args,**kwargs)
    if self.headers.getheader('Authorization') :
        cred = base64.b64decode(self.headers.getheader('Authorization').split(' ')[1])
        users = conf.get('users', [])
        if cred in users:
            self.creds = cred
            return f(self,*args,**kwargs)
#else
    self.send_response(401)
    self.send_header('WWW-Authenticate', 'Basic realm=\"Meter\"')
    self.send_header('Content-type', 'text/html')
    self.end_headers()
    self.wfile.write('Not authenticated.')
    return False
return authenticate