[РЕШЕНО] настройка Nginx на Digital Ocean под Drupal

Настраиваю сервер Nginx для сайта c Domain Access на Диджитал Оушене.

Есть ли какие-нибудь особенности настройки его под Друпал для максимальной пользы?

———————————————————————————————————————-

Настроил, может кому пригодится, использовал:

каплю – Debian 7 64 php 5.4 NGINX

1. Перенос:

# использовал SCP:

https://www.digitalocean.com/community/articles/how-to-migrate-a-mysql-d…

Но можно и проще (?):

https://www.digitalocean.com/community/articles/how-to-use-sshfs-to-moun…

Вроде неплохая подборка видео по переносу:

http://www.youtube.com/playlist?list=PL91978F0CB6BC302B

2. Установка сервера:

https://www.digitalocean.com/community/articles/how-to-install-drupal-wi…

Написано под Ubuntu 13.04, я ставил в Debian 7, всё норм.

# Сначала ставим всё необходимое:

sudo apt-get update   sudo apt-get install mysql-server php5-mysql   sudo apt-get install nginx

# Запускаем сервер:

sudo service nginx start

# Устанавливаем PHP:

sudo apt-get install php5-fpm

# Настраиваем PHP:

открываем php.ini

sudo nano /etc/php5/fpm/php.ini

# Меняем на 0 (для безопасности):

cgi.fix_pathinfo=0

# Далее редактируем конфигурацию php5-fpm:

sudo nano /etc/php5/fpm/pool.d/www.conf

# В нём находим строку listen = 127.0.0.1:9000, и меняем 27.0.0.1:9000 на /var/run/php5-fpm.sock:

listen = /var/run/php5-fpm.sock

# Рестарт php5-fpm:

sudo service php5-fpm restart

# Загружаем друпал:

wget http://ftp.drupal.org/files/projects/drupal-7.25.tar.gz

7.25 – меняем на актуальную версию.

(я делал драшем)

# Распаковываем:

tar xzvf drupal-7.25.tar.gz

7.25 – меняем на актуальную версию.

## Создаем БД и юзера:

# Заходим:

mysql -u root -p

# Создаем БД:

CREATE DATABASE drupal;

вместо drupal – можно любое название

# создаем юзера:

CREATE USER drupaluser@localhost;

# Устанавливаем пароль нового юзера password

SET PASSWORD FOR drupaluser@localhost= PASSWORD("password");

# Даем юзеру привилегии:

GRANT ALL PRIVILEGES ON drupal.* TO drupaluser@localhost IDENTIFIED BY 'password';

# Обновляем MySQL:

FLUSH PRIVILEGES;

# Выходим из MySQL:

exit

# Копируем файлы:

Директория сервера в Ubuntu 13.04 находится в /usr/share/nginx/html/.

(У меня в Debian 7 в /usr/share/nginx/www/)

# Создаем директорию drupal:

sudo mkdir /usr/share/nginx/html/drupal

# Копируем файлы друпала из своей домашней директории:

cd ~ sudo mv drupal-7.25/* /usr/share/nginx/html/drupal/

## Настройка Друпала:

# Копируем default.settings.php и переименовываем в settings.php

sudo cp /usr/share/nginx/html/drupal/sites/default/default.settings.php /usr/share/nginx/html/drupal/sites/default/settings.php

# Даем права на запись:

sudo chmod a+w /usr/share/nginx/html/drupal/sites/default/settings.php

# Меняем права для директории:

sudo chmod a+w /usr/share/nginx/html/drupal/sites/default

ИЛИ Есть классный скрипт (https://www.drupal.org/node/244924) который автоматически проставляет везде нужные права :

<pre>#!/bin/bash if [ $(id -u) != 0 ]; then printf "This script must be run as root.\n" exit 1 fi drupal_path=${1%/} drupal_user=${2} httpd_group="${3:-www-data}" # Help menu print_help() { cat <<-HELP This script is used to fix permissions of a Drupal installation you need to provide the following arguments: 1) Path to your Drupal installation. 2) Username of the user that you want to give files/directories ownership. 3) HTTPD group name (defaults to www-data for Apache). Usage: (sudo) bash ${0##*/} --drupal_path=PATH --drupal_user=USER --httpd_group=GROUP Example: (sudo) bash ${0##*/} --drupal_path=/usr/local/apache2/htdocs --drupal_user=john --httpd_group=www-data HELP exit 0 } # Parse Command Line Arguments while [ $# -gt 0 ]; do case "$1" in --drupal_path=*) drupal_path="${1#*=}" ;; --drupal_user=*) drupal_user="${1#*=}" ;; --httpd_group=*) httpd_group="${1#*=}" ;; --help) print_help;; *) printf "Invalid argument, run --help for valid arguments.\n"; exit 1 esac shift done if [ -z "${drupal_path}" ] || [ ! -d "${drupal_path}/sites" ] || [ ! -f "${drupal_path}/core/modules/system/system.module" ] && [ ! -f "${drupal_path}/modules/system/system.module" ]; then printf "Please provide a valid Drupal path.\n" print_help exit 1 fi if [ -z "${drupal_user}" ] || [ $(id -un ${drupal_user} 2> /dev/null) != "${drupal_user}" ]; then printf "Please provide a valid user.\n" print_help exit 1 fi cd $drupal_path printf "Changing ownership of all contents of "${drupal_path}":\n user => "${drupal_user}" \t group => "${httpd_group}"\n" chown -R ${drupal_user}:${httpd_group} . printf "Changing permissions of all directories inside "${drupal_path}" to "rwxr-x---"...\n" find . -type d -exec chmod u=rwx,g=rx,o= '{}' \; printf "Changing permissions of all files inside "${drupal_path}" to "rw-r-----"...\n" find . -type f -exec chmod u=rw,g=r,o= '{}' \; printf "Changing permissions of "files" directories in "${drupal_path}/sites" to "rwxrwx---"...\n" cd sites find . -type d -name files -exec chmod ug=rwx,o= '{}' \; printf "Changing permissions of all files inside all "files" directories in "${drupal_path}/sites" to "rw-rw----"...\n" printf "Changing permissions of all directories inside all "files" directories in "${drupal_path}/sites" to "rwxrwx---"...\n" for x in ./*/files; do find ${x} -type d -exec chmod ug=rwx,o= '{}' \; find ${x} -type f -exec chmod ug=rw,o= '{}' \; done echo "Done settings proper permissions on files and directories"

Копируешь код данный выше в файл и называешь его, нарример “fix-permissions.sh” и запускаешь: <pre>sudo bash fix-permissions.sh --drupal_path=your/drupal/path --drupal_user=your_user_name</pre> т.е. с нашими данными, это примерно так: <pre>sudo bash fix-permissions.sh --drupal_path=/usr/share/nginx/www/директория_нашего_сайта --drupal_user=www-data</pre>

# Устанавливаем php модуль:

sudo apt-get install php5-gd

# Рестартим

sudo service php5-fpm restart

## Настраиваем виртуальные хосты:

# Копируем дефолтный конфиг и переименовываем в drupal (конфиг для нашего сайта):

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/drupal

# Редактируем наш конфиг:

sudo nano /etc/nginx/sites-available/drupal

Как то так:

server { listen 80; root /usr/share/nginx/html/drupal; index index.php index.html index.htm; server_name 162.243.9.129; location / { try_files $uri $uri/ /index.php?q=$uri&$args; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html/drupal; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9$ location ~ \.php$ { #fastcgi_pass 127.0.0.1:9000; # With php5-fpm: fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params;   }

Т.е.:

- поменяли root на /usr/share/nginx/html/drupal

- поменяли server_name из localhost на доменное имя твоего сайта или его IP

- поменяли “try_files $uri $uri/ /index.html;” на “try_files $uri $uri/ /index.php?q=$uri&$args;”

!!! Есть более интересный вариант, если установить

sudo apt-get install nginx-doc

то в директории /usr/share/doc/nginx-doc/examples/, уже есть готовый конфиг, заточенный под друпал:

cd /usr/share/doc/nginx-doc/examples/ gunzip drupal.gz

# Активируем конфигурацию:

sudo ln -s /etc/nginx/sites-available/drupal /etc/nginx/sites-enabled/drupal

# Удаляем дефолтную:

sudo rm /etc/nginx/sites-enabled/default

# Перегружаем сервер:

sudo service nginx restart

# Открываем IP сайта (или домен)/drupal/setup.php и устанавливаем друпал.
——————————————————————————————-

А вот здесь уже готовый конфиг, но немного сложноватый:

https://github.com/perusio/drupal-with-nginx/blob/D7/README.md

с этим (от perusio) конфигом используем сборку сервера из http://debian.perusio.net/unstable/

3. Настройка мультисайтинга:

https://www.digitalocean.com/community/articles/how-to-enable-multiple-s…

4. настройка DNS:

я просто добавил домены в ДНС на оушене и прописал у регистратора – ns1.digitalocean.com ns2.digitalocean.com ns3.digitalocean.com.

5. Кэширование:

http://www.echoditto.com/blog/more-drop-bucket-drupal-8-nginx-and-microc…

# Микрокэширование

в файле конфига твоего сайта на nginx добавляешь

location ~ \.php$ { set $no_cache ""; if ($request_method !~ ^(GET|HEAD)$) { set $no_cache "1"; } if ($no_cache = "1") { add_header Set-Cookie "_mcnc=1; Max-Age=2; Path=/"; add_header X-Microcachable "0"; } if ($http_cookie ~ SESS) { #checks an auth'd user set $no_cache "1"; } #... lots of fastcgi stuff to do the caching }

http://valic.me/article/how-configure-nginx-php-fpm-mysql-memcached-apc-…

http://www.accella.net/drupal-7-memcached-apc-nginx-php5-fpm-squeeze-opt…

# Сжатие gzip:

http://stackoverflow.com/questions/15999606/enable-gzip-compression-with…

я просто вот так раскомментировал в конфиге nginx /etc/nginx/nginx.conf:

## # Gzip Settings ## gzip on; gzip_disable "msie6"; gzip_vary on; gzip_proxied any; gzip_comp_level 6; gzip_buffers 16 8k; gzip_http_version 1.1; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

6. Защита:

- связка nginx, logwatch, fail2ban и ufw http://habrahabr.ru/post/153589/

пока только fail2ban поставил, якобы из коробки работает, посмотрим:

- http://putty.org.ru/articles/fail2ban-ssh.html

Мэмкеш настроить пока не получилось (php 5.4).

Панель не ставил – но хорошие отзывы по веста.

7. Для внеклассного чтения подробные/детальные руководства/гайды:

Очень неплохое руководства в друпал-nginx группе: https://groups.drupal.org/node/388488

С картинками + защита от атак +SSL: http://dashohoxha.blogspot.ru/2012/10/using-nginx-as-web-server-for-drup…

PS: Кому что непонятно пишите в коментах, это позволит мне лучше расписать тему.

________________________________________________________________________________________________________________

<<<ПРОДОЛЖЕНИЕ ЗДЕСЬ>>>, т.к. сюда уже не вмещается.

Источник: http://www.drupal.ru/node/106587

[РЕШЕНО] настройка Nginx на Digital Ocean под Drupal

Настраиваю сервер Nginx для сайта c Domain Access на Диджитал Оушене.

Есть ли какие-нибудь особенности настройки его под Друпал для максимальной пользы?

———————————————————————————————————————-

Настроил, может кому пригодится, использовал:

каплю – Debian 7 64 php 5.4 NGINX

1. Перенос:

# использовал SCP:

https://www.digitalocean.com/community/articles/how-to-migrate-a-mysql-d…

Но можно и проще (?):

https://www.digitalocean.com/community/articles/how-to-use-sshfs-to-moun…

Вроде неплохая подборка видео по переносу:

http://www.youtube.com/playlist?list=PL91978F0CB6BC302B

2. Установка сервера:

https://www.digitalocean.com/community/articles/how-to-install-drupal-wi…

Написано под Ubuntu 13.04, я ставил в Debian 7, всё норм.

# Сначала ставим всё необходимое:

sudo apt-get update

sudo apt-get install mysql-server php5-mysql

sudo apt-get install nginx

# Запускаем сервер:

sudo service nginx start

# Устанавливаем PHP:

sudo apt-get install php5-fpm

# Настраиваем PHP:

открываем php.ini

sudo nano /etc/php5/fpm/php.ini

# Меняем на 0 (для безопасности):

cgi.fix_pathinfo=0

# Далее редактируем конфигурацию php5-fpm:

sudo nano /etc/php5/fpm/pool.d/www.conf

# В нём находим строку listen = 127.0.0.1:9000, и меняем 27.0.0.1:9000 на /var/run/php5-fpm.sock:

listen = /var/run/php5-fpm.sock

# Рестарт php5-fpm:

sudo service php5-fpm restart

# Загружаем друпал:

wget http://ftp.drupal.org/files/projects/drupal-7.25.tar.gz

7.25 – меняем на актуальную версию.

(я делал драшем)

# Распаковываем:

tar xzvf drupal-7.25.tar.gz

7.25 – меняем на актуальную версию.

## Создаем БД и юзера:

# Заходим:

mysql -u root -p

# Создаем БД:

CREATE DATABASE drupal;

вместо drupal – можно любое название

# создаем юзера:

CREATE USER drupaluser@localhost;

# Устанавливаем пароль нового юзера password

SET PASSWORD FOR drupaluser@localhost= PASSWORD("password");

# Даем юзеру привилегии:

GRANT ALL PRIVILEGES ON drupal.* TO drupaluser@localhost IDENTIFIED BY 'password';

# Обновляем MySQL:

FLUSH PRIVILEGES;

# Выходим из MySQL:

exit

# Копируем файлы:

Директория сервера в Ubuntu 13.04 находится в /usr/share/nginx/html/.

(У меня в Debian 7 в /usr/share/nginx/www/)

# Создаем директорию drupal:

sudo mkdir /usr/share/nginx/html/drupal

# Копируем файлы друпала из своей домашней директории:

cd ~ sudo mv drupal-7.25/* /usr/share/nginx/html/drupal/

## Настройка Друпала:

# Копируем default.settings.php и переименовываем в settings.php

sudo cp /usr/share/nginx/html/drupal/sites/default/default.settings.php /usr/share/nginx/html/drupal/sites/default/settings.php

# Даем права на запись:

sudo chmod a+w /usr/share/nginx/html/drupal/sites/default/settings.php

# Меняем права для директории:

sudo chmod a+w /usr/share/nginx/html/drupal/sites/default

# Устанавливаем php модуль:

sudo apt-get install php5-gd

# Рестартим

sudo service php5-fpm restart

## Настраиваем виртуальные хосты:

# Копируем дефолтный конфиг и переименовываем в drupal (конфиг для нашего сайта):

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/drupal

# Редактируем наш конфиг:

sudo nano /etc/nginx/sites-available/drupal

Как то так:

server { listen 80; root /usr/share/nginx/html/drupal; index index.php index.html index.htm; server_name 162.243.9.129; location / { try_files $uri $uri/ /index.php?q=$uri&$args; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html/drupal; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9$ location ~ \.php$ { #fastcgi_pass 127.0.0.1:9000; # With php5-fpm: fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params;   }

Т.е.:

- поменяли root на /usr/share/nginx/html/drupal

- поменяли server_name из localhost на доменное имя твоего сайта или его IP

- поменяли “try_files $uri $uri/ /index.html;” на “try_files $uri $uri/ /index.php?q=$uri&$args;”

!!! Есть более интересный вариант, если установить

sudo apt-get install nginx-doc

то в директории /usr/share/doc/nginx-doc/examples/, уже есть готовый конфиг, заточенный под друпал:

cd /usr/share/doc/nginx-doc/examples/ gunzip drupal.gz

# Активируем конфигурацию:

sudo ln -s /etc/nginx/sites-available/drupal /etc/nginx/sites-enabled/drupal

# Удаляем дефолтную:

sudo rm /etc/nginx/sites-enabled/default

# Перегружаем сервер:

sudo service nginx restart

# Открываем IP сайта (или домен)/drupal/setup.php и устанавливаем друпал.
——————————————————————————————-

А вот здесь уже готовый конфиг, но немного сложноватый:

https://github.com/perusio/drupal-with-nginx/blob/D7/README.md

3. Настройка мультисайтинга:

https://www.digitalocean.com/community/articles/how-to-enable-multiple-s…

4. настройка DNS:

я просто добавил домены в ДНС на оушене и прописал у регистратора – ns1.digitalocean.com ns2.digitalocean.com ns3.digitalocean.com.

5. Кэширование:

http://www.echoditto.com/blog/more-drop-bucket-drupal-8-nginx-and-microc…

# Микрокэширование

в файле конфига твоего сайта на nginx добавляешь

location ~ \.php$ { set $no_cache ""; if ($request_method !~ ^(GET|HEAD)$) { set $no_cache "1"; } if ($no_cache = "1") { add_header Set-Cookie "_mcnc=1; Max-Age=2; Path=/"; add_header X-Microcachable "0"; } if ($http_cookie ~ SESS) { #checks an auth'd user set $no_cache "1"; } #... lots of fastcgi stuff to do the caching }

http://valic.me/article/how-configure-nginx-php-fpm-mysql-memcached-apc-…

http://www.accella.net/drupal-7-memcached-apc-nginx-php5-fpm-squeeze-opt…

# Сжатие gzip:

http://stackoverflow.com/questions/15999606/enable-gzip-compression-with…

я просто вот так раскомментировал в конфиге nginx /etc/nginx/nginx.conf:

## # Gzip Settings ## gzip on; gzip_disable "msie6"; gzip_vary on; gzip_proxied any; gzip_comp_level 6; gzip_buffers 16 8k; gzip_http_version 1.1; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

6. Защита:

- связка nginx, logwatch, fail2ban и ufw http://habrahabr.ru/post/153589/

пока только fail2ban поставил, якобы из коробки работает, посмотрим:

- http://putty.org.ru/articles/fail2ban-ssh.html

Мэмкеш настроить пока не получилось (php 5.4).

Панель не ставил – но хорошие отзывы по веста.

7. Для внеклассного чтения подробные/детальные руководства/гайды:

Очень неплохое руководства в друпал-nginx группе: https://groups.drupal.org/node/388488

С картинками + защита от атак +SSL: http://dashohoxha.blogspot.ru/2012/10/using-nginx-as-web-server-for-drup…

Короткое, но достойное + APC: http://blog.celogeek.com/201209/202/how-to-configure-nginx-php-fpm-drupa…

PS: Кому что непонятно пишите в коментах, это позволит мне лучше расписать тему.

Источник: http://www.drupal.ru/node/106587

Спам с drupal.ru

Был приятно удивлен рассылкой о http://www.drupal.ru/node/101301.
Ещё больше был удивлён, что владелец данного ресурса позволил использовать мою личную информацию, без моего согласия для рассылки спама.
Поскольку данный ресурс частный, а не сайт сообщества – пусть это останется на совести его владельца.

Хотел сходить на конфу, но теперь, с таким начом… как бы привкус не тот уже

Источник: http://www.drupal.ru/node/101340

Собираю вопросы по Drupal

Приветствую всех посетителей и вопрошающих.
Кто еще не знает – я организовываю в Москве регулярные посиделки в стиле DrupalCafé – небольшие встречи друпалеров, где можно за чашкой чая, кофе с печеньками обсудить разные новости, послушать что-то интересное по Drupal.
В этом году последнее мероприятие было 29 ноября, следующее уже будет в январе 2013 года. В этот раз я хочу попробовать кое-что новое – небольшой пакет-доклад с ответами на вопросы пользователей.
В связи с этим я собираю вопросы – вопрос должен быть небольшой, требующий минут 10-15 на ответ. Ответ будет оформлять визуально.
Например, что-то вроде такого:
“Как создать представление для новостей на сайте?” – в ответ будет небольшой скринкаст, где описано как установить нужные модули, как добавить тип материалы и вывести список при помощи Views. Этот скринкаст я покажу вживую сам или попрошу коллег, на одном из DrupalCafé и смогу ответить на уточняющие вопросы, обсудить решение.

Кстати, как Вы сами считаете, будет ли такой формат интересен посетителям?
Возможно где-то уже есть такие вопросы, которые интересны Вам, но не решены. Напишите мне в комментариях тут или оформите тему для обсуждения на сайте DrupalCafé Russia

Источник: http://www.drupal.ru/node/93541

Внимание: конкурс! Создай модуль – получи iPad!

Победители объявлены http://startupturbo.com/contest !

Компания Startupturbo проводит конкурс для друпалеров на создание модуля авторизации через mail.ru для drupal7.
Подробности здесь: http://startupturbo.com/contest

Теперь новости о том, как продвигается конкурс, в нашем твиттере https://twitter.com/StartupTurbo и на странице конкурса http://startupturbo.com/contest.
Следите за обновлениями!

Источник: http://www.drupal.ru/node/88413

DrupalCon Munich 2012 – кто-нибудь едет?

Здравствуйте!

Не встретил на сайте упоминания о таком крупном в мире Drupal событии – DrupalCon Munich 2012.
Едет ли кто-нибудь еще в Мюнхен с drupal.ru?
Если таковые найдутся, предлагаю скооперироваться. Отписываетесь сюда или по контактам в профиле.

Источник: http://www.drupal.ru/node/85531

DrupalCodeSprint 19-21 апреля 2012 в Харькове!

Приглашаем всех желающих принять участие в Drupal Code Sprint!

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

Принять участие в мероприятие абсолютно БЕСПЛАТНО может любой желающий, но количество мест ограничено. Спешите!

Подробности на сайте мероприятия – http://drupalcodesprint.com/

Контакты организаторов:
Тел.: +38 (067) 5777-369
E-mail: info@drupalcodesprint.com

На сайте опубликованы темы проектов для голосования и обсуждения.

Тимлиды проектов код-спринта: Александр Швец Андрей Поданенко Вадим Миргород Дмитрий Олареско Андрей Постников Юрий Герасимов Юрий Глушков Влад Савицкий Дмитрий Кресин Егор Талдыкин Павел Прищепа Чингис Санданов Ярослав Дорощук Партнеры: Drupal.ua Итл DrupalCafe.com.ua Радмир Экспохолл Прикрепленный файл Размер banner_drupal_ua_final.jpg 118.61 кб

Источник: http://www.drupal.ru/node/78377

DrupalConf 2012 – дата проведения

Всем привет!

Мы собираемся провести следующий DrupalConf 25-26 мая 2012 в Москве.

Но вот вопрос(просим расшифровать свой голос в комментариях):

Attached poll “какой формат будет для всех удобней ?”.
Register or login to poll
Results:
1 день – 2 потока – суббота (26 мая): 34 голоса
2 дня – 1 поток – пятница, суббота (25-26 мая): 35 голосов

Источник: http://www.drupal.ru/node/75740

Голосования в Drupal – оставить ли голосовалку здесь?

На сегодня здесь созданно 445 опросов и собрано 13057 ответов/choices к ним. Текущая реализация inner poll

Предлагаю провести еще одно голосование – Нужен ли на drupal.ru механизм крепления опросов к публикациям?

Пост следует из плана в рамках плановой миграции на drupal 7 и будет дополняться мнениями из коментов, как например

- разрешать ли внесение изменения в порядок и новых вариантов ответа в открытый опрос

Своё видение, даже графическое, просьба освящать в коментах, можно развёрнуто

Пока планируется отключение модуля, так что варианты замены тоже приветствуются.

Attached poll “Нужен ли на drupal.ru механизм крепления опросов к публикациям?”.
Register or login to poll
Results:
нужен: 59 голосов
нужен но другой: 13 голосов
оставить в режиме для чтения: 2 голоса
Убрать совсем: 11 голосов

Источник: http://www.drupal.ru/node/73531

[Коллективный заказ] Модуль Яндекс.Карты для Drupal 7

Необходимо разработать модуль Яндекс.Карты для Drupal 7? Прошу сообщить стоимость и сроки.

Примерное ТЗ:
ТЗ модуля Я.Карты для Drupal 7:
- возможность выбора Народной карты Яндекса
- при добавлении ноды пользователь ставит на карте маркер
- при просмотре ноды отображается сама нода и карта с маркером пользователя
- если это возможно, то сделать выбор – что показывать на маркере (Заголовок ноды и, например, поля из ноды)
- (можно и без этого пункта) находясь на странице термина, вывести маркеры всех нод принадлежащих этому термину на карту

Исполнителям: Данный модуль планируется выложить на drupal.ru.
Заказчикам (таким же как я): Думаю модуль Я.Карты для Drupal 7 нужен не одному мне, поэтому желающие скинуться приветствуются.

Источник: http://www.drupal.ru/node/69824

Тема админки Drupal 8

День добрый.

Грядёт Drupal 8 и в нём будет новая тема оформления. Как в 7-ке на смену Garland пришла Seven, так и в 8-ке будет новая тема, в том числе и тема админки.

Хотялось бы поднять тему разделения темы сайта и темы админки и узнать, кто какую тему устанавливает для админки. На данный момент для Drupal 7, по моему мнению популярны три темы:

Seven – стоит по умолчанию RootCandy Rubik (требует наличия темы Tao)



На мой взгляд Rubik – наиболее удобная и проработанная тема для админки. А для быстрой навигации по страницам настройки модулей есть страница http://www.site.ru/admin/index.

Поделитесь какими темами для админки Вы пользуетесь.
Только вместе мы сможем достичь светлого будущего.

Прикрепленный файл Размер seven.png 47.61 кб rootcandy.png 46.23 кб rubiktao.png 72.23 кб

Attached poll “Какую тему вы используете для админки”.
Register or login to poll
Results:
seven: 29 голосов
rootcandy: 6 голосов
rubik: 17 голосов
свой вариант: 6 голосов
OM Admin Theme: 0 голосов
Polpo Admin Theme: 1 голос

Источник: http://www.drupal.ru/node/69727

Корзина Ubercart в popup окне

Решил на сайте сделать корзину в сплывающем окне.
Прежде всего хочу сказать спасибо Splash за помощь по выковыриванию данных из корзины.
И за отличный модуль UC JS CART который очень был кстати.
Были использованы модули  uc ajax cart для добавления динамической корзины,  colorbox для попап окон, uc js cart для динамического подсчета товара, ну и немного допилены tpl и css.
Итак первое это uc ajax cart. В нем есть папка с тимплейтами, немного правим .tpl для реализации внешнего вида и некоторого функционала.
Сюда же добавим скрытый div с содержимым корзины и ссылку colorbox для показа этого содержимого в попап окне.
У меня это так:

<a href="?width=850&height=auto&inline=true#cartOpen" class="colorbox-inline">В корзине <?   $a = count(uc_cart_get_contents()); echo $a.' товар'.numberProduct($a, array('','а','ов'));       ?></a>   <div class="price-of-cart">на <strong><?php print $total ;?></strong></div> <div id="myCart" style="display:none;"> <div id="cartOpen"> <h2 class="cart_header">Корзина</h2> <?php print ubercart_popup(); ?>   </div> </div>

По внешнему виду так:

Там еще функция для склонения товар, товары, товаров есть:

<?php function numberProduct($number, $titles) { $cases = array (2, 0, 1, 1, 1, 2); return $titles[ ($number%100>4 && $number%100<20)? 2 : $cases[min($number%10, 5)] ]; } ?>

Далее как вы увидели в шаблоне есть вывод содержимого корзины <?php print ubercart_popup(); ?>
Это и есть функция которая выдирает содержимое корзины писать её нужно в template.php
Выглядит она так:

function ubercart_popup() { if (module_exists('uc_cart')) { $items = uc_cart_get_contents(); if (empty($items)) { return theme('uc_empty_cart'); } $output = ''; foreach (uc_cart_cart_pane_list($items) as $pane) { if ($pane['enabled']) { $output .= $pane['body']; } } return '<div id = "uc_popup">'. $output .'</div>'; } }

В общем содержимое уже выводится в попапе, только вот есть несколько моментов. Это не срабатывает яваскрипт для обновления позиций товара из модуля uc ajax cart(как решить не знаю). По этому поводу я отключил в настройках модуля фитчу “Ajaxify cart page”.
Далее установите модуль uc js cart – как раз он и позволяет динамически подсчитывать стоимость.
Вот практически и все. Остальное можно сделать средствами css.
Осталось одно, когда мы открываем корзину и добавляем или уменьшаем количество позиций, в самом блоке корзины при закрыти попап окна нихера не меняется. Скорее всего нужно дописать кусок яваскрипт кода для обновления.(займусь позже)
У меня это выглядит вот так все:

Если кто то из читателей решал этот воброс более изящно, корректно, быстро и еще как нить иначе расскажите плиз.
Всем спасибоу!

Источник: http://www.drupal.ru/node/69695

Drupal Cafe Москва – встреча 4.10.11 – 19-00

Во вторник 4.10.2011 в 19:00 пройдет третья встреча Drupal кафе Москва

Место проведения уже традиционно – ул. Покровка 38/1 Читалкафе (вход с Лялиного переулка) карта

На этот раз у нас будет несколько докладов.

1. Microsoft и Drupal (PVasili)
2. Настройка от боевого, до сервера разработки в VirtualBox (В. Касихин)

Установка Ubuntu-server в VirtualBox. Установка и настройка nginx. Установка и настройка MariaDB. Установка и настройка Git. Установка Zend Server Se.CE. Создание ключей доступа. Первоначальная установка Drupal. Кратко о системах мониторинга и управления: Munin и WebAdmin

3. Минидоклады: инструменты разработки в Drupal, меры защиты сайта (Александр Графов)

Оставшееся время, как всегда посветим остальным актуальным вопросам.

Источник: http://www.drupal.ru/node/69238

Очередное Drupal Cafe в Ростове

Предлагаю провести вторую встречу Drupal Cafe в Субботу 1 октября в 15:00 (так чтобы удобно было добраться в Ростов и из Ростова гостям из других городов, если у них будет возможность приехать).
Будет это в Yo Budda (Б.Садовая, 2), что крайне удобно приезжим (очень близко к вокзалу, сами смотрите).

На повестке дня:
1. Будут новички – вот и познакомимся
2. Баркэмп Краснодар – кто едет
3. Сообщество стартаперов в Ростове – почему бы не рассказать им про друпал
4. Succes stories – посиделки в кафе не располагают к каким-либо структурным докладом, но располагают к небольшим историям из личного опыта, ради этого стоит отвлечься на пару часов и посидеть с коллегами

Телефон для связи 89287700850

Attached poll “Примерно сколько человек ждать, сообщите пожалуйста”.
Register or login to poll
Results:
Я буду: 0 голосов
В другой раз: 0 голосов

Источник: http://www.drupal.ru/node/68992

Drupal Cafe Москва – встреча 30.08.11 – 19-00

Во вторник 30.08.2011 в 19:00 пройдет уже вторая встреча Drupal кафе Москва

Место проведения – ул. Покровка 38/1 Читалкафе (вход с Лялиного переулка) карта

По длительности планируем опять 2-3 часа, по примеру первой встречи.

Основной темой будет обсуждение результатов ДрупалКон’11 Лондон.
Если останется время, то посветим остальным актуальным вопросам.

Как всегда приветствуются доклады. Выступающие могут воспользоваться проектором и микрофоном.

Из изменений по поводу самого кафе:
На этот раз увеличиться ассортимент напитков, включая чай и кофе.
Так же в меню будет присутствовать еда, которой так не хватало на первой встрече.
По поводу WiFi вопрос пока остается не решенным, но в ближайшее время думаю разрешиться.

Attached poll “Приду на встречу”.
Register or login to poll
Results:
Да: 3 голоса
Нет: 4 голоса
Хочу, но не смогу: 2 голоса

Источник: http://www.drupal.ru/node/67534

Друпал-кафе в Ростове-на-Дону

Хочу провести небольшой опрос, на фоне организации встречи в Краснодаре. Прошу отметиться, кто заинтересован в друпал-кафе в Ростове. Нужно узнать сколько нас, друпалеров, тут вообще есть. Будет достаточное количество – будет организация встречи.

update:
Предлагаю провести первую встречу в Воскресенье 26 июня в 14:00 (так чтобы удобно было добраться в Ростов и из Ростова гостям из Краснодара, если у них будет возможность приехать).
Будет это в Yo Budda (Б.Садовая, 2), что крайне удобно приезжим (очень близко к вокзалу, сами смотрите).

Телефон для связи 89287700850

Attached poll “Вас ждать на Drupal-кафе в Ростове 26 июня?”.
Register or login to poll
Results:
Да: 7 голосов
Конечно: 0 голосов
Простите, в следующий раз: 2 голоса
Я не из Ростова, но буду: 0 голосов

Источник: http://www.drupal.ru/node/63666

Организация Drupal-кафе в Москве?

На каждой встрече друпалеров приходим к мнению, что встречаться надо чаще. Так давайте это делать! Я вижу формат встреч таким:

* предварительная запись для оценки числа участников
* доклад минут на 20 или серия минидокладов (lighting talks) — c отведением общего времени на учебную часть — до получаса
* дружеское общение с распитием кофе/спиртного и поеданием подходящей организму пищи
* встречи раз в пару недель, при хорошем раскладе в постоянном месте в одно и тоже время

А как видите эти встречи вы? Опрос ниже.

Ищется помещение в Москве под проведение Drupal-кафе. Негромкое кафе с wifi и адекватными ценами, как вариант аудитория в учебном заведении или в офисе фирмы. Врядли планируется больше 10-20 участников, денег с этого тоже не получить, но для кафе очевидно прибыль за продажу еды/питья, а фирмы могли бы засветиться на d.ru как спонсоры сообщества.

Attached poll “Формат встречи?”.
Register or login to poll
Results:
Хочу послушать доклады: 23 голоса
Хочу выступить с докладом: 9 голосов
Просто хочу пообщаться: 20 голосов
Хочу поесть и выпить: 11 голосов
Место встречи только в пределах Садового кольца: 3 голоса
Место встречи только недалеко от станции метро: 12 голосов

Источник: http://www.drupal.ru/DrupalCafe/Ru/Moscow

Смена адреса сайта?

Hello world))

Решил изменить адрес сайта с домена ORG.UA на домен COM (что б избавится от региональной принадлежности). В google webmaster это процесс подробно описан.Перемещение сайта

Может кому пригодится

Если вы собираетесь переместить свой сайт в новый домен, здесь находятся советы, которые помогут сохранить рейтинг сайта в результатах поиска Google. Основная цель – избежать ошибок 404 (файл не найден) при нажатии на ссылки на ваш сайт.

* Если вы меняете домен по причине смены торговой марки или изменения дизайна сайта, то, возможно, лучше будет совершить это в два этапа: сначала переместить сайт, а затем заняться изменением его внешнего вида. Это позволит сделать процесс перемещения более прозрачным для пользователя и менее проблемным для владельца сайта. Поэтапность действий также сократит время на поиск и устранения ошибок.

* Используйте переадресацию 301 для постоянного перенаправления всех страниц со своего старого сайта на новый. Она сообщает пользователям и поисковым машинам, что ваш сайт переехал навсегда. Рекомендуется осуществить перемещение и настроить переадресацию в пределах раздела или каталога и проверить его работоспособность и только потом перемещать все содержание.

Не устанавливайте единичную переадресацию, направляющую весь трафик со старого сайта на вашу новую домашнюю страницу. Это поможет избежать ошибок 404, однако такой способ не лишен недостатков. Настройка постраничной переадресации займет больше времени, однако это позволит сохранить рейтинг сайта в Google и не будет затруднять пользователям работу с сайтом. Если совпадение 1:1 (рекомендуется) между страницами старого и нового сайтов отсутствует, попробуйте сделать так, чтобы трафик каждой страницы старого сайта перенаправлялся на новую страницу с подобным содержанием.

* Проверьте внешние и внутренние ссылки на страницы сайта. В идеале следует связаться со всеми веб-мастерами, на сайте которых расположены ссылки на ваш сайт, и попросить их обновить ссылки. Если такой вариант не выполним, убедитесь в том, что трафик со всех страниц с входящими ссылками перенаправляется на ваш новый сайт. Также необходимо проверить внутренние ссылки на вашем старом сайте и обновить их так, чтобы они указывали на новый домен. После завершения процесса перемещения сайта используйте средство проверки ссылок от Xenu, чтобы убедиться в отсутствии неработающих старых ссылок на сайте. Крайне важно, чтобы исходное содержание включало в себя абсолютные ссылки (например, www.example.com/kulinariya/rezepti/shokoladny_tort.html), а не относительные (например, ../rezepti/shokoladny_tort.html).

* Чтобы избежать путаницы, рекомендуется сохранить право управления прежним доменом сайта в течение, по крайней мере, 180 дней.

* Используйте инструмент изменения адреса в Инструментах для веб-мастеров, чтобы сообщить Google о перемещении сайта. (Примечание. Чтобы использовать инструмент изменения адреса, нужно подтвердить свое право собственности на старый и новый сайты.)

* Убедитесь в том, что вы добавили новый сайт в свой аккаунт Инструментов для веб-мастеров и подтвердили право собственности на него.

* Мы рекомендуем создать и отправить файл Sitemap со списком всех URL на новом сайте. Файлы Sitemap позволяют сообщить Google о страницах вашего нового сайта, которые иначе могли бы быть пропущены при сканировании.

После завершения всех этих этапов вы можете использовать данные инструмента для веб-мастеров для проверки работоспособности сайта. До момента вступления всех изменений в силу может пройти некоторое время, которое как раз можно использовать для проверки сайта:

* Проверьте ошибки при сканировании старого и нового сайтов, чтобы убедиться в том, что все переадресации 301 работают правильно и что при обращении к ресурсам нового сайта не возникает ошибок 404.
* Если вы создали и передали файл Sitemap для своего нового сайта, то на странице сведений о файле Sitemap можно посмотреть, сколько из переданных URL-адресов было просканировано и добавлено в индекс Google.

Остановлюсь на пункте о Sitemap, если заходишь на алиас и смотришь карту сайта, то там указаны все старые пути, как это изменить? Откуда модуль XML Sitemap берет адрес сайта?

Источник: http://www.drupal.ru/node/59401

Персональные планы на Drupal 8

В настоящий момент происходит опрос drupal.org сообщества на предмет участия в развитии внутренних частей drupal 8.

Желающие могут описать возможность личного участия в разработке Drupal 8

Большая просьба писать исключительно то, в чем Вам лично есть желание принять участие!

EDIT

Я предлагаю согласовать идеи и перспективы разработки, лично я хочу проработать UX для poll, blog, forum и рефакторинг системы кеширования. Если в issue будет достаточно тестировщиков и участников – у неё больше шансов попасть в ядро.

Attached poll “Желаете ли принять участие в разработке Drupal 8?”.
Register or login to poll
Results:
Помогу кодом: 11 голосов
Помогу с темизацией: 5 голосов
Помогу с UX: 6 голосов
Неосилю: 28 голосов
Нет: 6 голосов

Источник: http://www.drupal.ru/node/58467

А давайте попереводим

В прошлом году в составе команды энтузиастов собрались и сделали вот этот перевод. Было весело, получилось неплохо.

Сейчас есть желание сделать еще переводов важных статей про Друпал. Более актуальных – про семерку. Соответственно, вопрос: кто хочет поучаствовать?

Перевести можно, например, вот эту серьезную документацию: http://drupal.org/developing/api/database. Также будет здорово, если желающие увидеть перевод тех или иных статей про Друпал (желательно, 7) накидают в этот топик ссылок.

Всх, кто хочет принять участие, прошу отмечаться. Участникам предыдущего перевода, а также тем, кто специально просил, немного погодя вышлю персональные приглашения.

Пока отозвались:
Softovick
heap.ster
q2_faith
Ch
iHappy
Shift-Web
G.A. Vinogradov
LeopART
ingumsky@drupal.org
ZanaDLucTyc
P.Selfin@drupal.org
Clarion
kyky
Dock@drupal.org
mak-vardugin

Предложено к переводу:
http://drupal.org/node/360052 – Standards, security and best practices
http://drupal.org/developing/api/database – Drupal 7 Database API
http://drupal.org/theme-guide/6-7 – Theming Guide

Источник: http://drupal.ru/node/57373

А давайте попереводим

В прошлом году в составе команды энтузиастов собрались и сделали вот этот перевод. Было весело, получилось неплохо.

Сейчас есть желание сделать еще переводов важных статей про Друпал. Более актуальных – про семерку. Соответственно, вопрос: кто хочет поучаствовать?

Перевести можно, например, вот эту серьезную документацию: http://drupal.org/developing/api/database. Также будет здорово, если желающие увидеть перевод тех или иных статей про Друпал (желательно, 7) накидают в этот топик ссылок.

Всх, кто хочет принять участие, прошу отмечаться. Участникам предыдущего перевода, а также тем, кто специально просил, немного погодя вышлю персональные приглашения.

Пока отозвались:
Softovick
heap.ster
q2_faith
Ch
iHappy
Shift-Web
G.A. Vinogradov
LeopART
ingumsky@drupal.org
ZanaDLucTyc
P.Selfin@drupal.org
Clarion
kyky
Dock@drupal.org
mak-vardugin
NovoKain
likin
alexart79

Предложено к переводу:
http://drupal.org/node/360052 – Standards, security and best practices
http://drupal.org/developing/api/database – Drupal 7 Database API
http://drupal.org/theme-guide/6-7 – Theming Guide

Источник: http://www.drupal.ru/node/57373

Тренинги по Drupal в Киеве. Для начинающих.

Привет!
Мы проводим тренинг для начинающих веб-мастеров.
Очень доступно рассказываем, показываем и сразу практикуем, как сделать свой сайт на Drupal.

Часть людей, начинающих работать с Друпалом, сталкиваются в первое время (недели-месяцы) с рядом тривиальных задач, решение которых не очевидно по разным причинам, поэтому приглашаем пройти наш курс и открыть мозг для новых знаний:)

Кратко.
Цель тренинга — научить эффективно использовать возможности Drupal.
Архитектура меню, блоков, таксономия.
Изучаем основные модули Views, CCK, ImageCache и др.
Первый опыт в проведении тренинга по созданию сайтов для новичков оказался весьма успешным. Мы запланировали проведение курсов для вечерней группы и группы выходного дня.

Группа выходного дня — 18-20 февраля
Вечерняя группа — 9-12 февраля

Стоимость обучающих курсов 1 000 грн. Вне зависимости от выбранного формата: учиться в выходные (суббота, воскресенье и вечер пятницы) либо вечером в будни (среда, четверг и пятница вечером, и полдня субботы).
Каждому участнику предоставляется персональный доступ для сайта FTP и БД (база данных).

После прохождения курса участникам предоставляется консультативная поддержка.

По всем вопросам можно обращаться по телефону 093 330 28 30 (Даша),
либо отправляйте свои контактные данные на daredjana@gmail.com.

Источник: http://drupal.ru/node/56898

Тренинги по Drupal в Киеве. Для начинающих.

Привет!
Мы проводим тренинг для начинающих веб-мастеров.
Очень доступно рассказываем, показываем и сразу практикуем, как сделать свой сайт на Drupal.

Часть людей, начинающих работать с Друпалом, сталкиваются в первое время (недели-месяцы) с рядом тривиальных задач, решение которых не очевидно по разным причинам, поэтому приглашаем пройти наш курс и открыть мозг для новых знаний:)

Кратко.
Цель тренинга — научить эффективно использовать возможности Drupal.
Архитектура меню, блоков, таксономия.
Изучаем основные модули Views, CCK, ImageCache и др.
Первый опыт в проведении тренинга по созданию сайтов для новичков оказался весьма успешным. Мы запланировали проведение курсов для вечерней группы и группы выходного дня.

Группа выходного дня — 18-20 февраля
Вечерняя группа — 9-12 февраля

Стоимость обучающих курсов 1 000 грн. Вне зависимости от выбранного формата: учиться в выходные (суббота, воскресенье и вечер пятницы) либо вечером в будни (среда, четверг и пятница вечером, и полдня субботы).
Каждому участнику предоставляется персональный доступ для сайта FTP и БД (база данных).

После прохождения курса участникам предоставляется консультативная поддержка.

По всем вопросам можно обращаться по телефону 093 330 28 30 (Даша),
либо отправляйте свои контактные данные на daredjana@gmail.com.

Источник: http://www.drupal.ru/node/56898

Drupal 7 press release на русском готов

Большое спасибо всем, кто помог с переводом – успели оперативно всё привести в порядок!!!

Все переведено!

Подробности http://groups.drupal.org/node/113499

Английский вариант http://d7.redesign.devdrupal.org/drupal-7.0/ (drupal/drupal)

пресс-релиз http://ietherpad.com/GRSTAShVWk
анонс http://ietherpad.com/3OXbHtwSCl
транскрипт видео http://ietherpad.com/H58kSp0oLd

Результат будет выглядеть приблизительно так:

Источник: http://www.drupal.ru/node/55066

Drupal 7 press release на русском готов

Большое спасибо всем, кто помог с переводом – успели оперативно всё привести в порядок!!!

Все переведено!

Подробности http://groups.drupal.org/node/113499

Официальная страница http://drupal.org/drupal-7.0/ru

пресс-релиз http://ietherpad.com/GRSTAShVWk
анонс http://ietherpad.com/3OXbHtwSCl
транскрипт видео http://ietherpad.com/H58kSp0oLd

Результат будет выглядеть приблизительно так:

Источник: http://drupal.ru/node/55066

Сервер переводов на русский язык

Этот топик — опрос сообщества:

На каком домене лучше располагаться серверу переводов на русский язык?

Обсуждение русского языка на drupal.org: Add Russian language to l.d.o.

Attached poll “На каком домене лучше располагаться серверу переводов на русский язык?”.
Register or login to poll
Results:
drupaler.ru: 88 голосов
localize.drupal.org: 179 голосов

Источник: http://www.drupal.ru/node/52937

Модуль модерации комментариев для drupal.ru

Нужен модуль модерации, умеющий такие вещи:

перенос части комментариев в другую ноду (попутно с переприсвоением таксономии – переносом в другой форум и т.п.)
перенос комментариев из одной существующей ноды в другую

Есть что-нибудь готовое близкое по функционалу?

BTW, стараниями  djeyana на сайте скоро будет адекватный поиск.

Источник: http://www.drupal.ru/node/52869

Проморолики друпала

В контексте редизайна drupal.ru есть идея. На сайтах разных проектов сейчас модно презентовать своё творение коротким видео — подача может быть самой разной, от сугубо информационной перечисляющей набор фич, до эстетского проморолика фиг поймёшь о чём. На главной д.ру планируется сохранить вводный текст для новичков, но переделать его под закладки (quicktabs) для лучшего восприятия и чтобы влезло больше инфы. Вот туда же можно запихнуть и штуки три таких рекламных видео. Если у кого есть силы и ресурсы сделать качественное видео — давайте обсудим и объявим официальный конкурс. В качестве оплаты за труды в конце роликов могла бы быть страница или ссылка с рекламой сделавшей его студии или человека.

Источник: http://www.drupal.ru/node/52597

© 2009 Обзор CMS