পাইথন / জ্যাঙ্গো / ডাব্লুএসজিআই / অ্যাপাচি - "আমদানি ত্রুটি: কোনও মডিউল নামক সাইট নেই"


8

আমি আমার স্থানীয় উবুন্টু মেশিনে একটি জাঙ্গো অ্যাপ্লিকেশন ব্যবহার করার চেষ্টা করছি। তবে সাইটটি কাজ করে না এবং আমার /var/log/apache2/errors.logএই জাতীয় বার্তাগুলিতে পূর্ণ:

ImportError: No module named site

আমার /var/log/apache2/error.log(আজকের জন্য) দেখতে এটির মতো:

$ cat error.log | uniq -c
      1 [Wed Jun 29 09:37:37 2011] [notice] Apache/2.2.17 (Ubuntu) mod_wsgi/3.3 Python/2.7.1+ configured -- resuming normal operations
  12966 ImportError: No module named site

আমি যখন আমার মেশিনটি চালু করি তখন এটি সূচনা হয়, তারপরে 12,966 লাইন সমস্ত no module named siteবার্তা বলে

একটি তারিখের সময় ক্ষেত্রের অভাব নোট করুন। ওয়েবসাইটে না যাওয়ার সময়ও এই ত্রুটিগুলি পুনরাবৃত্তি করা হয় (যেমন ওয়েব অনুরোধ না করার সময়ও)। কোনও ব্রাউজারে ওয়েবসাইটে যাওয়ার সময়, এটি কেবল স্তব্ধ হয়ে যায়, যেন কোনও বড় ডাউনলোডের জন্য অপেক্ষা করে।

সেটিংস

অ্যাপাচি মডিউলগুলি

আমি পাইপ দিয়ে ইনস্টল প্রচুর প্যাকেজ (Incl। Django 1.1) সহ অজগর 2.5 ভার্চুয়ালেনভ ব্যবহার করছি। আমি মোড_উজি লোড করেছি:

$ ls -l /etc/apache2/mods-enabled/wsgi*
lrwxrwxrwx 1 root root 27 2010-10-04 16:50 /etc/apache2/mods-enabled/wsgi.conf -> ../mods-available/wsgi.conf
lrwxrwxrwx 1 root root 27 2010-10-04 16:50 /etc/apache2/mods-enabled/wsgi.load -> ../mods-available/wsgi.load

আমি লোকালহোস্টে সেট করা একটি ডোমেন নাম হিসাবে "tix" ব্যবহার করি /etc/hosts

$ grep tix /etc/hosts
127.0.0.1   tix

অ্যাপাচি কনফিগারেশন

এখানে আমার অ্যাপাচি কনফিগারেশন (আপনি এটিকে কাজ করার জন্য কিছু প্রচেষ্টা, মন্তব্য করা লাইনগুলি দেখতে পারেন) :

# mod-wsgi enabled virtual host
WSGISocketPrefix /home/rory/tix/tix_wsgi/tmp
WSGIPythonHome /home/rory/tix/virtualenv2.5/lib/python2.5/
UnSetEnv PYTHONSTARTUP
SetEnv PYTHONPATH /home/rory/tix/virtualenv2.5/lib/python2.5/
#WSGIPythonEggs /home/rory/svn/tix/tmp/python-eggs

<VirtualHost 127.0.0.1:80>
    ServerName tix

    Alias /media /home/rory/tix/tix/media
    Alias /selenium /home/rory/tix/tix/tests/selenium

    <Directory /home/rory/tix/tix/media>
        SetHandler None
        Order allow,deny
        Allow from all
    </Directory>

    WSGIDaemonProcess tix user=tix_wsgi group=tix_wsgi processes=4 threads=1           python-path=/home/rory/tix/virtualenv2.5/lib/python2.5/site-packages

    WSGIScriptAlias / /home/rory/tix/tix/apache/loader.wsgi
    WSGIProcessGroup tix

    CustomLog /var/log/apache2/tix_access.log combined
    ErrorLog /var/log/apache2/tix_error.log


<Location /server-status>
    SetHandler server-status
    Order Deny,Allow
    Deny from all
</Location>

  <IfModule rewrite_module>
      RewriteEngine On
      RewriteCond %{HTTP_HOST} ^media.tix$ [NC]
      RewriteRule .? http://tix/media%{REQUEST_URI} [R=301,L]
  </IfModule>
</VirtualHost>

ডাব্লুএসজি লোডার

এখানে আমার লোডার.ওগজি:

আমি import siteএই ফাইলটিতে থাকতাম, যা আমি ভেবেছিলাম যে সমস্যাটি হতে পারে তবে আমি এটি সরিয়ে দিয়েছি এবং ত্রুটিগুলি সামনে আসতে থাকে।

# loader.wsgi - WSGI adapter for tix django project
# The python paste wrapper catches apache 500 errors (Internal Server Errors) and gives debug output
# See http://pythonpaste.org/modules/exceptions.html
import os
import sys

os.environ['DJANGO_SETTINGS_MODULE'] = 'tix.settings.base'

from paste.exceptions.errormiddleware import ErrorMiddleware

import django.core.handlers.wsgi
tixette = django.core.handlers.wsgi.WSGIHandler()

application = ErrorMiddleware(tixette, debug=True, error_email='operator@example.com', error_subject_prefix='Alert: wsgi loader python paste: ', error_log='/tix/1.0/logs/paste.log',  show_exceptions_in_wsgi_errors=False)

এই কনফিগারেশনটি উবুন্টু ১০.১০ তে দুর্দান্ত কাজ করে, তবে যেহেতু আমি উবুন্টু ১১.০৪-তে আপগ্রেড করেছি, আমি উপরের ত্রুটিগুলি পেয়েছি।

উত্তর:


6

আপনার মোড_উজি পাইথন ২.7 এর জন্য সংকলিত হয়েছিল। তারপরে আপনি পাইথন 2.5 ভার্চুয়াল পরিবেশে চেষ্টা করে এটি নির্দেশ করতে পারবেন না।

এছাড়াও, সেটিং:

WSGIPythonHome /home/rory/tix/virtualenv2.5/lib/python2.5/

এটি পাইথন ২.7 ভার্চুয়াল পরিবেশ হলেও ভুল জিনিসটির দিকে ইঙ্গিত করছে।

সেটিংস:

UnSetEnv PYTHONSTARTUP
SetEnv PYTHONPATH /home/rory/tix/virtualenv2.5/lib/python2.5/

হয় কিছু করবে না এবং আপনি কী করতে পারবেন এমন ধারণাটি আপনি কোথায় পেয়েছেন তাও জানেন না।

এফডাব্লুআইডাব্লু, ভার্চুয়াল পরিবেশে মোড_উজি ডকুমেন্টেশন এখানে পাওয়া যাবে:

https://modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html

এটি আপনাকে সাহায্য করবে না যদিও আপনার মোড_উজি এবং পাইথন ইনস্টলেশনগুলির সাথে আরও একটি প্রাথমিক সমস্যা আছে বলে মনে হচ্ছে। সমস্যাটি সম্ভাব্য একটি বৈকল্পিক হচ্ছে:

https://modwsgi.readthedocs.io/en/develop/user-guides/installation-issues.html#multiple-python-versions

আপনি যে Mod_wsgi.so ব্যবহার করছেন তা কোথায় পেলেন?

পাইথন 2.7 ইনস্টল করা হয় কোথায়?

আপনি আর কি পাইথন সংস্করণ ইনস্টল করেছেন এবং কোথায়?

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.