Установка OpenX на CentOS 6

OpenX – написанный в PHP популярный рекламный сервер, оборудованный веб-интерфейсом, который позволяет управлять рекламной кампанией и отслеживать статистику.

1: Требования

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

В руководстве используются условные доменные имена:

  • ns1.myhosting.com (11.22.11.22)
  • ns2.myhosting.com (111.2.333.444)

Затем запустите свой сервер CentOS 6 и настройте DNS.

Примечание: Это руководство требует 1GB  памяти и 1 ядро CPU.

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

Также нужно настроить 2 GB своп-памяти (SWAP).

dd if=/dev/zero of=/swap bs=1024 count=2097152
mkswap /swap && chown root. /swap && chmod 0600 /swap && swapon /swap
echo /swap swap swap defaults 0 0 >> /etc/fstab
echo vm.swappiness = 0 >> /etc/sysctl.conf && sysctl -p

После этого добавьте домен в настройки DNS.

2: Установка зависимостей OpenX

Для начала добавьте репозиторий для Nginx. Создайте /etc/yum.repos.d/nginx.repo и добавьте следующее:

[nginx] name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

Затем установите пакеты.

yum -y install nginx mysql-server php php-mysql php-fpm php-gd

3: Настройка Nginx

Отредактируйте /etc/nginx/conf.d/default.conf, указав свой домен в server_name.

server {
listen       80;
server_name  cloudads.tk www.cloudads.tk;
location / {
root   /usr/share/nginx/html/cloudads.tk;
index  index.html index.htm index.php;
}
location ~ \.php$ {
root           html;
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html/cloudads.tk$fastcgi_script_name;
include        fastcgi_params;
}
}

4: Установка OpenX

Чтобы приступить к установке OpenX, включите директиву Short Open Tags и установите правильный часовой пояс.

echo "short_open_tag = On" >> /etc/php.ini
echo "date.timezone=America/New_York" >> /etc/php.ini
echo "session.save_path = /tmp" >> /etc/php.ini
sed -i 's/.*php_value\[session.save_path\].*/php_value\[session.save_path\] = \/tmp/g' /etc/php-fpm.d/www.conf

Возможно, директива short_open_tag уже включена. Также нужно включить save_path и установить значение /tmp. В качестве альтернативы используйте Memcached.

Перейдите в каталог домена и загрузите пакеты:

cd /usr/share/nginx/html
mkdir cloudads.tk
wget http://download.openx.org/openx-2.8.10.tar.bz2
tar jxvf openx-2.8.10.tar.bz2
mv openx-2.8.10/* cloudads.tk/
chown -R nginx. /usr/share/nginx
sed -i 's/apache/nginx/g' /etc/php-fpm.d/www.conf
service mysqld start && service php-fpm start && service nginx start
chkconfig mysqld on && chkconfig php-fpm on

Измените права доступа к папке.

cd /usr/share/nginx/html/cloudads.tk
chmod -R a+w /usr/share/nginx/html/cloudads.tk/var
chmod -R a+w /usr/share/nginx/html/cloudads.tk/var/cache
chmod -R a+w /usr/share/nginx/html/cloudads.tk/var/plugins
chmod -R a+w /usr/share/nginx/html/cloudads.tk/var/templates_compiled
chmod -R a+w /usr/share/nginx/html/cloudads.tk/plugins
chmod -R a+w /usr/share/nginx/html/cloudads.tk/www/admin/plugins
chmod -R a+w /usr/share/nginx/html/cloudads.tk/www/images

5: Создание БД

Теперь нужно создать базу данных и пользователя для OpenX. Вместо PassWord введите свой пароль.

mysqladmin create openx
mysql -Bse "create user 'openx'@'localhost' identified by 'PassWord'"
mysql -Bse "grant all privileges on \`openx\`.* to 'openx'@'localhost'"
mysqladmin flush-privileges

6: Онлайн-установка OpenX

Откройте доменное имя или IP-адрес сервера в браузере.

Кликните I Agree и переходите к следующей странице.

Попробуйте зарегистрировать аккаунт OpenX.org; на момент проверки руководства это было невозможно.

Чтобы обойти эту ошибку, можно временно отключить исходящие соединения SSL и попытаться войти с помощью любых других учётных данных.

Позже можно зарегистрироваться на OpenX Market (Admin Panel -> My Account -> OpenX Market -> Get Started).

Итак, отключите исходящие соединения SSL и попробуйте авторизоваться:

iptables -I OUTPUT 1 -p tcp --dport 443 -j REJECT

Введите учётные данные БД. Затем установите имя администратора и пароль. Завершив установку OpenX, удалите правило iptables для исходящих соединений:

iptables -D OUTPUT 1

7: Отключение панели управления

sed -i 's/dashboardEnabled.*$/dashboardEnabled=0/' /usr/share/nginx/html/cloudads.tk/var/cloudads.tk.conf.php

Готово! Теперь можно открыть панель администратора OpenX.

Tags: , , ,

Добавить комментарий