2

私のDjangoアプリでは、次のようなエラーが発生します: "IOError:[Errno 13] Permission denied:'file_name'"

これは私のコードです:

def record_export():
    for file_name, tab_name in tab:
        if len(globals()[tab_name].objects.all()) <> 0:
            f = open(file_name, 'wb')
            writer = csv.writer(f, delimiter='|')
            for record in globals()[tab_name].objects.values_list():
                writer.writerow([unicode(s).encode("utf-8") for s in record]) 
            f.close()

開発環境では、すべて問題ありません。許可があると思います。本番環境では、「IOError:[Errno 13] Permissiondenied:'file_name'」があります。理由を知っていますか?ご協力いただきありがとうございます

4

1 に答える 1

0

Djangosのrunserverは通常rootとして実行されますが、これはおそらくあなたの問題です。

Webサーバーには、ファイルの読み取り/書き込みの権限が必要です。ls -l /your/path/to/file特定のディレクトリのアクセス許可を確認するために使用できます。権利と所有者を変更するには、とを使用chmodchownます。

apache2 Webサーバーを実行している場合、ほとんどの場合、ユーザーとグループはですwww-data

于 2012-10-31T12:30:09.143 に答える