2016-11-20 3 views
1

Ich versuche, einen Flask REST Service auf CentOS Apache2 mit WSGI auszuführen. Der REST-Dienst benötigt einen sehr kleinen Speicher. Also entschied ich mich, SQLite mit sqlite3 Python-Paket zu verwenden. Die gesamte Anwendung funktionierte perfekt auf meinem lokalen System und auf dem CentOS-Server, wenn sie unter app.run() lief. Aber wenn ich WSGI verwendet, um die Anwendung auf Apache Gastgeber, ich bin immerPython sqlite3 OperationalError: Versuch, eine schreibgeschützte Datenbank zu schreiben

OperationalError: attempt to write a readonly database 

Ich habe die Rechte der Datei überprüft. Der Benutzer und die Gruppe der Datei werden unter Verwendung von chown und chgrp auf Apache (unter dem der Server ausgeführt wird) festgelegt. Außerdem verfügt die Datei über die Berechtigung rwx. Noch bekomme ich Lese-Datenbankfehler. Es folgt, was ich bekomme ls -al auf der db-Datei ausgeführt wird:

-rwxrwxrwx. 1 apache apache 8192 Nov 19 01:39 dbfile.db 

Meine Apache-Konfiguration:

<VirtualHost *> 
ServerName wlc.host.com 

WSGIDaemonProcess wlcd 
WSGIScriptAlias//var/www/html/wlcd.wsgi 
RewriteEngine on 
RewriteCond %{HTTP:Authorization} ^(.*) 
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1] 
<Directory /var/www/html/> 
    WSGIProcessGroup wlcd 
    WSGIApplicationGroup %{GLOBAL} 
    Order deny,allow 
    Allow from all 
    Require all granted 
</Directory> 

Antwort

0

Neben den Datenbank-Dateiberechtigungen zu ändern, müssen Sie auch Berechtigungen ändern für das Verzeichnis, das die Datenbankdatei hostet. Sie können den folgenden Befehl versuchen:

chmod 664 /path/to/your/directory/ 

Sie können auch die Eigentümer des Verzeichnisses wie folgt ändern:

chown apache:apache /path/to/your/directory/ 
+0

Haben Sie das Verzeichnis des ower ändern 'Apache: apache'? – ettanany

+0

Das Python-Paket meiner flask-App hat die Berechtigungen 'drw-rw-r -' (mit apache: apache) und das wsgi-Skript, das dies importiert, hat dasselbe. –

+0

Versuchen Sie '-R' wie' chown -R apache hinzuzufügen: apache/Pfad/zu/Ihrem/Verzeichnis/' – ettanany

Verwandte Themen