سؤال

أحاول تشغيل التطبيق قارورة لا يهدأ في أباتشي باستخدام مود_وسجي.هذا يعمل بشكل جيد مع خادم التطوير.لقد قرأت كل ما يمكنني العثور عليه ولا يبدو أن أيا من الإجابات التي رأيتها تعمل من أجلي.التطبيق يعالج طلبات غير قاعدة البيانات بشكل صحيح ولكن يعطي الخطأ التالي عندما أحاول الوصول إلى عنوان ورل الذي يتطلب الوصول إلى قاعدة البيانات:

OperationalError: (OperationalError) (2003, "Can't connect to MySQL server on 'localhost' ([Errno 13] Permission denied)") None None

لقد قلصت إلى البداية السريعة التي لا تهدأ مع القارورة config وبلدي قارورة - نماذج سكلالشيمي المستوردة (from flask import models).هنا هو رمز بيثون الخاص بي:

import flask
import flask.ext.sqlalchemy
import flask.ext.restless
import sys

sys.path.insert(0, '/proper/path/to/application')

application = flask.Flask(__name__, static_url_path = "")
application.debug=True
application.config.from_object('config')

db = flask.ext.sqlalchemy.SQLAlchemy(application)

from app import models

# Create the Flask-Restless API manager.
manager = flask.ext.restless.APIManager(application, flask_sqlalchemy_db=db)

# Create API endpoints, which will be available at /api/<tablename> by
# default. Allowed HTTP methods can be specified as well.
manager.create_api(models.Asset, methods=['GET'])

# start the flask loop
if __name__ == '__main__':
        application.run()

أفترض أن مود_وسجي ليس لديها مشكلة في العثور على config الملف الذي يحتوي على تفاصيل الوصول إلى قاعدة البيانات لأنني لا أحصل على خطأ عند قراءة التكوين وأنا أيضا لا تحصل على خطأ على from app import models.

بحثي حتى الآن قادني إلى الاعتقاد بأن هذا له علاقة مع اتصال سكل-الخيمياء دب الموجودة في نطاق خاطئ أو السياق وربما معقدة من قبل مدير أبي قارورة لا يهدأ.لا أستطيع أن يبدو أن التفاف رأسي حوله.

هل كانت مفيدة؟

المحلول

سيتم تشغيل التعليمات البرمجية الخاصة بك تحت أباتشي / مود_سجي كمستخدم أباتشي خاص.من المحتمل ألا يمتلك هذا المستخدم الامتيازات المطلوبة للاتصال بقاعدة البيانات.

على الرغم من أنه يقول 'لوكالهوست' وكنت تعتقد أن قد ينطوي على اتصال مأخذ عادي ، وبعض عملاء قاعدة البيانات سوف نرى 'لوكالهوست' وسوف تلقائيا بدلا من محاولة واستخدام مقبس يونكس لقاعدة البيانات.قد لا يكون الوصول إلى اتصال مقبس يونكس.

بدلا من ذلك ، عند الذهاب من خلال اتصال مقبس يونكس انها تحاول التحقق من صحة ما إذا كان المستخدم أباتشي من لديه حق الوصول ، ولكن إذا لم يتم إعداد قاعدة البيانات للسماح وصول المستخدم أباتشي ، فإنه قد تفشل بعد ذلك.

النظر في استخدام وضع الخفي من مود_وسجي وتكوين وضع الخفي لتشغيل كمستخدم مختلف لمستخدم أباتشي واحد تعلمون لديه حق الوصول إلى قاعدة البيانات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top