Как установить Jekyll?

Jekyll — это генератор статических сайтов. Его удобно использовать для статичных блогов, чтобы потом их можно было разместить, например, на гитхабе.

Jekyll написан на ruby, поэтому установка следующая (пример для ubuntu):

# Устанавливаем ruby

sudo apt-get install ruby ruby-dev

# Устанавливаем jekyll

sudo gem install jekyll -V

# Создаем новый статичный сайт и запускаем встроенный сервер

jekyll new my-awesome-site
cd my-awesome-site
jekyll serve

# Заходим в браузере на страницу http://localhost:4000 и смотрим результат.

Все просто.

Практически все, что здесь написано, есть на официальном сайте.

Просмотр изображений перед загрузкой на сайт

Это можно сделать, используя следующую функцию:

[code lang=»javascript»]
function readURL(input, img_container) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) { img_container.attr(‘src’, e.target.result); };
reader.readAsDataURL(input.files[0]);
}
}
[/code]

И использовать, например, так:

[code lang=»javascript»]
$(‘#myFileField’).change(function(e) {
readURL(e.target, $(‘#myImgPreview’));
});
[/code]

При верстке:

[code lang=»html»]
<div><input type="file" id="myFileField" /></div>
<div><img id="myImgPreview" /></div>
[/code]

Источник: http://stackoverflow.com/questions/4459379/preview-an-image-before-it-is-uploaded

apt-get не работает (ubuntu)

Если вдруг так приключилось, что apt-get отказывается работать, например, загружается, а потом без лишних слов просто вылетает, то попробуйте очистить кэш apt’а. Мне помогает.

[code lang=»bash»]
$ sudo rm -rf /var/cache/apt/archives/
[/code]

git и PHPStorm — игнорирование файлов и папок

В PHPStorm, при использовании файла .gitignore будет происходить ошибка — что он не может добавить файлы, которые находятся в этих папках. Это очевидно, но хотелось бы, чтоб он просто не добавлял их и ошибки не показывал. Для этого в этой IDE предусмотрена следующая штука:

File -> Settings -> Version Control -> Ignored Files

И там можно добавить файлы и папки, которые не требуется хранить в контроле версий (например, директории assets и protected/runtime в Yii).

Debug в PHPStorm

Устанавливаем xdebug:

[code lang=»bash»]
$ sudo apt-get install php5-xdebug
[/code]

В php.ini вставить следующий блок (желательно в самый низ):
ВНИМАНИЕ! У вас путь «zend_extension=»/usr/lib/php5/20090626/xdebug.so»» может отличатся! Необходимо написать путь до xdebug.so.

[code]
[XDebug]
zend_extension="/usr/lib/php5/20090626/xdebug.so"
xdebug.remote_enable=1
xdebug.remote_port="9000"
xdebug.profiler_enable=1
xdebug.profiler_output_dir="/tmp"
[/code]

Перезапускаем apache:

[code lang=»bash»]
$ sudo /etc/init.d/apache2 restart
[/code]

Теперь в PHPStorm.
Заходим в настройки, раздел PHP, подраздел Debug. Проверяем, что в XDebug порт должен стоять — 9000. Принимаем все изменения.
Далее заходим в Run/Edit configuration, нажимаем на плюсик, добавляем PHP Web Application. Называем, например, «phpdebug». Напротив Server нажимаем «…».
Пишем имя веб-приложения, которое будем отлаживать, пишем виртуальный хост, в качестве дебаггера — XDebug. Принимаем все изменения.

Теперь ставим брейкпоинт и нажимаем shift+F9.

Автоматическое создание виртуального хоста в Apache2 на Linux

В данном случае использовалась Ubuntu.

Чтобы автоматически создать виртуальный хост в Apache2, вы можете использовать bash-скрипт. Для этого создайте файл (например, vhost_creator.sh) и вставьте в него следующее содержимое:

[code lang=»bash»]
#!/bin/bash
echo "Creating Virtual Host"
cd /etc/apache2/sites-available
cat <<EOF >> "$1.conf"
<VirtualHost *:80>
ServerName $1
ServerAlias www.$1
DocumentRoot "/var/www/$1"
<Directory "/var/www/$1">
allow from all
Options +Indexes
</Directory>
</VirtualHost>
EOF
mkdir "/var/www/$1"
cd /etc/apache2/sites-enabled
ln -s "/etc/apache2/sites-available/$1.conf" "$1.conf"
echo "Editing /etc/hosts"
cat <<EOF >> "/etc/hosts"
127.0.0.1 $1
EOF
echo "Set permissions"
chown -R "$2:$2" "/var/www/$1"
echo "Restarting Apache2"
/etc/init.d/apache2 restart
echo "Finished!"
echo "Local address: /var/www/$1"
echo "Web address: http://$1"
[/code]

Сделайте файл исполняемым и запустите его от имени root’а:

[code lang=»bash»]
$ chmod a+x ./vhost_creator.sh
$ sudo ./vhost_creator.sh your_vhost your_login
[/code]
где:
your_vhost — название виртуального хоста, например test.local или mysite.ru (заходить на него вы будете по адресу http://test.local или http://mysite.ru).
your_login — ваша основная учетная запись, например crusat. Этот параметр требуется для установки прав владельца на корневую директорию виртуального хоста.

Последнюю версию данного приложения, вы можете найти на https://github.com/crusat/vhostcreator