Найти - Пользователи
Полная версия: настроил apache + wsgi, как сделать импорт в скрипте
Начало » Web » настроил apache + wsgi, как сделать импорт в скрипте
1
o7412369815963
настроил apache + wsgi по это статье: http://ubuntuforums.org/showthread.php?t=833766

сделал скрипт (index.wsgi):
def application(environ, start_response):
status = '200 OK'
output = 'Hello world!!!'
response_headers = [('Content-type', 'text/plain'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)

return [output]
все работает

как имопртировать свои файлы и куда их нужно положить?:
import mylib
если я ложу mylib.py рядом с index.wsgi то ничегоне работает

ЗЫ: откуда апач знает что скрипт wsgi на питоне написан? или wsgi фича только питоновская?
dimabest
в index.wsgi перед импортом своих модулей нужно добавить строки:
import sys
import os

# путь к корневой директории
path = os.path.dirname(__file__)
# добавляем его в список путей, где Python будет искать модули
sys.path.append(path)
# делаем корневую директорию "текущей". На импорт питоновских модулей не влияет,
# а вот пути к файлам теперь можно писать относительные - типа open('templates/page.tpl')
# или sqlite3.connect('db/users.db')
os.chdir(path)
o7412369815963
dimabest
в index.wsgi перед импортом своих модулей нужно добавить строки:
текущий путь в sys.path добавлется, но все равно не работает, вот мой код:
index.wsgi
# coding: utf-8

import sys
import os

path = os.path.dirname(__file__)
sys.path.append(path)
os.chdir(path)

import pagemake

def application(environ, start_response):
status = '200 OK'
output = 'Hello world!!!'

response_headers = [('Content-type', 'text/html; charset=utf-8'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)

return [output]
pagemake.py
def page()
return 'page index'
пробовал делать пакетом pagemake/__init__ , тоже неробит

что делать?
dimabest
если pagemake.py лежит рядом с index.wsgi, то:
import pagemake
если в папке, например lib, то:
1. в папке создаем модуль __init__.py
2. импортируем из пакета
from lib import pagemake
Если не работает заходим в папку с установленным Apache, и смотрим лог ошибок ‘logs/error.log’
o7412369815963
dimabest, спасибо.

оказывается просто была ошибка в pagemake.py, двоеточие забыл поставить :)

o7412369815963
pagemake.py
def page()
return 'page index'
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB