Запускаем progopedia.com

Запускаем англоязычную версию Прогопедии — свободной энциклопедии языков программирования — progopedia.com.

Сайт еще в стадии альфа-версии, не хватает описаний многих популярных языков программирования, движок определенно требует доработки — но для начала неплохо, я думаю.

Сайт использует Django (естественно), Markdown (при помощи http://pypi.python.org/pypi/Markdown/) в качестве языка разметки, Pygments для подсветки синтаксиса, django-reversion для контроля версий, DISQUS и django-disqus для комментариев.

Отзывы и комментарии приветствуются. Кто хочет присоединиться к progopedia.com в качестве редактора — присоединяйтесь :-)

Django, mod_python и virtualenv

Небольшая заметка для себя и для тех, кто все еще использует mod_python.

Для использования virtualenv с mod_python нужно создать файл в virtualenv bin директории, например, myvirtualdjango.py:

#myvirtualdjango.py

activate_this = '/home/django/progopedia.ru/ve/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

from django.core.handlers.modpython import handler

В конфигурационном файле apache в PythonPath нужно добавить bin директорию virtualenv и установить для PythonHandler значение myvirtualdjango (пример скопирован из реального httpd.conf):

<VirtualHost 127.0.0.1:81>
    ServerName progopedia.ru
    ServerAdmin admin@progopedia.ru

    <Location "/">
        SetHandler python-program
        PythonPath "['/home/django/progopedia.ru/ve/bin', '/home/django/progopedia.ru/src/progopedia_ru_project/'] + sys.path"
        PythonHandler myvirtualdjango
        SetEnv DJANGO_SETTINGS_MODULE settings
        SetEnv PYTHON_EGG_CACHE /var/tmp/egg
        PythonInterpreter polyprog_ru
    </Location>
</VirtualHost>

Установка и настройка Django на “боевом” сервере с CentOS 5

Я делаю на Django Энциклопедию языков программирования. За время работы сайта выяснилось, что нужен свой выделенный сервер для большей производительности и стабильности. Пока что взял дешевый сервер с 1.8 ГГц процессором и 512 Мб памяти.

В этой статье я расскажу об установке и настройке на этом сервере Django с mod_python для Apache, с кэшированием memcached и lighttpd для статических файлов.