14 июл. 2011 г.

ssh&git non-standart port

Возникла необходимость получить доступ к офисному серверу и репозиториям на нем через нестандартные порты. Немного покопавшись в интернете нашел ответы.
ssh:
fashust@fashust-laptop:~$ ssh -l user -p port host
git:

fashust@fashust-laptop:~$ git clone ssh://git@host:port/repo.git
Вот и все.))

2 июл. 2011 г.

Django Deploying (nginx+apache2+mod_wsgi+php)

Возникла необходимость деплоить на сервак, на котором уже работает один проект на php, django, с сохранением работоспособности php. Погуглив и почитав нашел такое решение:
apache2:
ports.conf
Тут все просто:
Listen 8080 # порт на котором будет висеть php
Listen 8081 # тут будет висеть django


../sites-available/php

<VirtualHost *:8080>
        ServerName your.server.name
        ServerAlias your.server.name.alias
        DocumentRoot /var/www/
        Alias / /var/www/
        <Directory /var/www>
                Options Indexes FollowSymLinks
                AllowOverride None
                Order Deny,Allow
                Allow from all
        </Directory>
        ErrorLog /var/log/apache2/error.log
        CustomLog /var/log/apache2/access.log common
</VirtualHost>


../sites-available/django

<VirtualHost *:8081>
        ServerAdmin webmaster@localhost
        ServerName  your.server.name
        ServerAlias your.server.name.alias
        <Directory /PATH_TO_DJANGO_PROJECT/apache/>
                Order deny,allow
                Allow from all
        </Directory>
        LogLevel warn
        ErrorLog /PATH_TO_DJANGO_PROJECT/logs/apache_error.log
        CustomLog /PATH_TO_DJANGO_PROJECT/logs/apache_access.log combined
        WSGIDaemonProcess django user=www-data group=www-data threads=25
        WSGIProcessGroup djano
        WSGIScriptAlias / /PATH_TO_DJANGO_PROJECT/apache/django.wsgi
</VirtualHost>
nginx:
proxy.conf
proxy_redirect              off;
proxy_set_header            Host $host;
proxy_set_header            X-Real-IP $remote_addr;
proxy_set_header            X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size        10m;
client_body_buffer_size     128k;
proxy_connect_timeout       90;
proxy_send_timeout          90;
proxy_read_timeout          90;
proxy_buffer_size           4k;
proxy_buffers               4 32k;
proxy_busy_buffers_size     64k;
proxy_temp_file_write_size  64k;
../sites-available/php
server {
        listen *:80;
        server_name your.server.name your.server.alias;
        root /var/www/;
        index index.php index.html;
        location / {
                root /var/www/;
                proxy_pass         http://127.0.0.1:8080;
                include ../nginx/proxy.conf;
        }
}
../sites-available/django
server {
        listen *:80;
        server_name your.server.name your.server.alias;
        access_log /PATH_TO_DJANGO_PROJECT/logs/nginx_access.log;
        error_log /PATH_TO_DJANGO_PROJECT/logs/nginx_error.log;
        location / {
                proxy_pass http://127.0.0.1:8081;
                include /etc/nginx/proxy.conf;
        }
        location /media {
                root /DJANGO_PROJECT_ROOT/;
        }
        location /static {
                root /DJANGO_STATIC_ROOT/;
        }
}
Вот собственно и все. Возможно есть и более элегантное решение, но пока я его не нашел.

2 мая 2011 г.

VirtualBox Extension Pack

После установки Ubuntu 11.04 столкнулся с проблемой в VirtualBox. При запуске оно выкидывает ошибку, точнее ворнинг о том, что ему не удается получить доступ к USB. Решение проблемы указывается в самом ворнинге, надо просто просто поставить VirtualBox Extension Pack. Но....
Хз как его ставить.
Оказалось не все так уж и сложно. В консоле просто пишем:
VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.0.2-69518.vbox-extpack

1 мая 2011 г.

Time to start again

С момента последней записи много поменялось. Начнем с самого начала:
- я уехал из Киева в родной Мухасранск;
- я получил военный билет(армия меня не любит, а я и не против);
- был новый год (с наступившим);
- меня уволили от сюда;
- я больше не использую Zope3(и надеюсь никогда не буду);
- меня взяли на работу сюда;
- пишу я на новом месте на python и использую Django(и это круто);
- я уехал из родного Мухосранска;
- я поставил Ubuntu 11.04(это тоже, кстати, круто);
- у меня есть много чего сюда написать, но, как это часто бывает, некогда;
Ну и пока все.

19 янв. 2011 г.

Zope 3 и Unicode hacks

Пришлось по работе разобраться с таким сервером приложений как Zope3. Хрень еще та, как по мне, но надо так надо.
При работе с это гадостью столкнулся с одной неприятной вещью, сайт содержит в себе 2 версии, английскую и украинскую. При отображении английской версии все проходит нормально, но.... при попытке зайти на украинскую версию zope ругается, точнее пишет что произошла внутренняя ошибка. Неприятно, но поправимо)))
Как говорится "Google наше ВСЕ". Нашел достаточно кривое, но все таки, решение здесь. На всякий случай продублирую для себя.
В файле /usr/lib/pythonX.X/site.py находим:

def setencoding():
   """Set the string encoding used by the Unicode implementation.  The
   default is 'ascii', but if you're willing to experiment, you can
   change this."""
   encoding = "ascii" # Default value set by _PyUnicode_Init()
   if 0:
       # Enable to support locale aware default string encodings.
       import locale
       loc = locale.getdefaultlocale()
       if loc[1]:
           encoding = loc[1]
   if 0:
       # Enable to switch off string to Unicode coercion and implicit
       # Unicode to string conversion.
       encoding = "undefined"
   if encoding != "ascii":
       # On Non-Unicode builds this will raise an AttributeError...
       sys.setdefaultencoding(encoding) # Needs Python Unicode build !
И меняем:
if 0:
       # Enable to support locale aware default string encodings.
       import locale
       loc = locale.getdefaultlocale()
на
if 1:
       # Enable to support locale aware default string encodings.
       import locale
       loc = locale.getdefaultlocale()

11 янв. 2011 г.

CUETools

Перспективный проект. Не уверен что быстро развивается, но будем надеяться, что достаточно.
Утилита предназначена для конвертирования аудио, но самый большой ее + это умение резать ape файлы на треки. Есть, правда, и неприятные моменты - MS .NET и не совсем интуитивно понятный интерфейс. Но мне она помогла)))
CUETools