Shi*_*hat 10 python apache sqlite mod-wsgi
我正在尝试使用WSGI在CentOS Apache2上运行Flask REST服务.REST服务需要非常小的存储空间.所以我决定使用SQLite和sqlite3python包.在使用时,整个应用程序在我的本地系统和CentOS服务器上运行良好app.run().但是当我使用WSGI在Apache上托管应用程序时,我得到了
OperationalError: attempt to write a readonly database
Run Code Online (Sandbox Code Playgroud)
我已经检查了文件的权限.该文件的用户和组被设置为阿帕奇(在其下运行服务器),使用chown和chgrp.此外,该文件具有rwx权限.我仍然得到只读数据库错误.以下是通过ls -al在db文件上运行得到的:
-rwxrwxrwx. 1 apache apache 8192 Nov 19 01:39 dbfile.db
Run Code Online (Sandbox Code Playgroud)
我的Apache配置:
<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>
Run Code Online (Sandbox Code Playgroud)
ett*_*any 12
除了更改数据库文件权限之外,还需要更改承载数据库文件的目录的权限.您可以尝试以下命令:
chmod 664 /path/to/your/directory/
Run Code Online (Sandbox Code Playgroud)
您还可以更改目录的所有者,如下所示:
chown apache:apache /path/to/your/directory/
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11271 次 |
| 最近记录: |