domingo, 29 de março de 2015

INSTALAÇÃO DO ALTERNATIVE PHP CACHE (APC) NA DREAMHOST UBUNTU 12.04LTS PARA DRUPAL

VAMOS INSTALAR O APC PARA RODAR COM O DRUPAL

Você tem que ter um servidor VPS, servidor com acesso de superusuário para instalar estas coisas.

  1. Faça download do APC: wget http://pecl.php.net/get/APC-3.1.13.tgz  
  2. Descompacte-o: tar xvf APC-3.1.13.tgz
  3. Entre na pasta descompactada: cd APC-3.1.13
  4. Execute o comando: phpize (Com PHP 5.3: /usr/local/php53/bin/phpize, Com PHP 5.4: /usr/local/php54/bin/phpize)
  5. ./configure; make (for PHP 5.3 domains: ./configure --with-php-config=/usr/local/php53/bin/php-config; make or for PHP 5.4 domains: ./configure --with-php-config=/usr/local/php54/bin/php-config; make)
  6. Copie o arquivo apc.so que está na pasta modules para a pasta /usr/local/php54/lib/php/extensions/no-debug-non-zts-20100525

CONFIGURE O APC
Crie a pasta ".php/5.4" no raíz do seu site. "5.4" é a versão do PHP que você tem.
Crie um arquivo chamado "phprc" contendo:

memory_limit = 128M
 realpath_cache_ttl = 300
 realpath_cache_size = 1M
 output_buffering = 1

 [APC]
 extension=apc.so
 apc.enabled=1
 apc.shm_segments=1

 ;32M per WordPress install
 apc.shm_size=64M

 ;Relative to the number of cached files (you may need to watch your stats for a day or two to find out a good number)
 apc.num_files_hint=7000

 ;Relative to the size of WordPress
 apc.user_entries_hint=4096

 ;The number of seconds a cache entry is allowed to idle in a slot before APC dumps the cache
 apc.ttl=7200
 apc.user_ttl=7200
 apc.gc_ttl=3600

 ;Setting this to 0 will give you the best performance, as APC will
 ;not have to check the IO for changes. However, you must clear
 ;the APC cache to recompile already cached files. If you are still
 ;developing, updating your site daily in WP-ADMIN, and running W3TC
 ;set this to 1
 apc.stat=1

 ;This MUST be 0, WP can have errors otherwise!
 apc.include_once_override=0

 ;Only set to 1 while debugging
 apc.enable_cli=0

 ;Allow 2 seconds after a file is created before it is cached to prevent users from seeing half-written/weird pages
 apc.file_update_protection=2

 ;Leave at 2M or lower. WordPress does't have any file sizes close to 2M
 apc.max_file_size=2M

 apc.cache_by_default=1
 apc.use_request_time=1
 apc.slam_defense=0
 apc.stat_ctime=0
 apc.canonicalize=1
 apc.write_lock=1
 apc.report_autofilter=0
 apc.rfc1867=1
 apc.rfc1867_prefix =upload_
 apc.rfc1867_name=APC_UPLOAD_PROGRESS
 apc.rfc1867_freq=0
 apc.rfc1867_ttl=3600
 apc.lazy_classes=0
 apc.lazy_functions=0


Você tem que criar esse phprc em cada domínio que você tiver.
Copie o arquivo "apc.php" que está na pasta do APC-3.1.13 para a pasta /sites/all/apc.php do seu drupal. Entre nele para ver se está tudo rodando direitinho.

INSTALANDO O APC NO DRUPAL 6

Instale o módulo "cacherouter".
Não esqueça de configurar o sites/default/settings.php:

#  ------------
#  CACHE ROUTER
#  ------------
  $conf['cacherouter'] = array(
    'default' => array(
      'engine' => 'apc',               // apc, memcache, db, file, eacc or xcache
      'server' => array(),             // memcached (host:port, e..g, 'localhost:11211')
      'shared' => TRUE,                // memcached shared single process
      'prefix' => '',                  // cache key prefix (for multiple sites)
      'path' => 'files/filecache',     // file engine cache location
      'static' => FALSE,               // static array cache (advanced)
    ),

  );

Não esqueça de reiniciar o servidor VPS. Faça login na Dreamhost, vá em VPS > DASHBOARD e clique em RESTART.

Fonte: http://wiki.dreamhost.com/APC

quinta-feira, 8 de janeiro de 2015

"REALLY" NICE MENUS DRUPAL CANTOS ARREDONDADOS E SOMBRA

REALLY NICE MENUS +Drupal 

Customização do Nice Menus do Drupal para colocar cantos arredondados e sombra. Você pode copiar o código abaixo e salvar em um arquivo com a extensão .CSS (Cascade Style Sheets). Depois você vai nas configurações globais do tema na área de administração do Drupal e aponta o caminho para ele no campo "CAMINHO PARA O ARQUIVO CUSTOMIZADO DE CSS DO NICE MENUS".
Ficou bem legal. Vou compartilhar o código que fiz para quem quiser usar:


Imagem ilustrativa do menu
/******************************
Global CSS for ALL menu types
******************************/

ul.nice-menu,
ul.nice-menu ul {
list-style: none;
padding: 0;
margin: 0;
border: 0px solid #ccc;
}

ul.nice-menu li {
border: 1px solid #ccc;
float: left; /* LTR */
background-color: #eee;
border-radius: 10px;
margin-bottom:7px;
-webkit-box-shadow: 10px 10px 10px -10px rgba(0, 0, 0, 0.5), 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
-moz-box-shadow: 10px 10px 10px -10px rgba(0, 0, 0, 0.5), 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
box-shadow: 10px 10px 10px -10px rgba(0, 0, 0, 0.5), 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
}

ul.nice-menu a {
padding: 0.3em 5px 0.3em 5px;
}

ul.nice-menu ul {
top: 1.8em;
left: -1px; /* LTR */
border: 0;
border-top: 1px solid #ccc;
margin-right: 0; /* LTR */
}

ul.nice-menu ul li {
width: 190px;
}


/******************************
VERTICAL (left/right) menus
******************************/

/* This is the default width of all vertical menus. */
ul.nice-menu-right, ul.nice-menu-left,
ul.nice-menu-right li, ul.nice-menu-left li {
width: 190px;
}

/* VERTICAL menus where submenus pop RIGHT (default). */
ul.nice-menu-right ul {
width: 190px;
left: 190px;
top: -1px;
}

ul.nice-menu-right ul ul {
width: 190px;
left: 190px;
top: -1px;
}

ul.nice-menu-right li.menuparent,
ul.nice-menu-right li li.menuparent {
background: #eee url(arrow-right.png) right center no-repeat;
}

ul.nice-menu-right li.menuparent:hover,
ul.nice-menu-right li li.menuparent:hover {
background: #ccc url(arrow-right.png) right center no-repeat;
}



/******************************
HORIZONTAL (down) menus
******************************/

ul.nice-menu-down {
float: left; /* LTR */
border: 0;
}

ul.nice-menu-down li {
border-top: 1px solid #ccc;
}

ul.nice-menu-down li li {
border-top: 0;
}

ul.nice-menu-down ul {
left: 0; /* LTR */
}

ul.nice-menu-down ul li {
clear: both;
}

ul.nice-menu-down li ul li ul {
left: 12.5em; /* LTR */
top: -1px;
}

ul.nice-menu-down .menuparent a {
padding-right: 15px; /* LTR */
}

ul.nice-menu-down li.menuparent {
background: #eee url(arrow-down.png) right center no-repeat; /* LTR */
}

ul.nice-menu-down li.menuparent:hover {
background: #ccc url(arrow-down.png) right center no-repeat; /* LTR */
}

ul.nice-menu-down li li.menuparent {
background: #eee url(arrow-right.png) right center no-repeat; /* LTR */
}

ul.nice-menu-down li li.menuparent:hover {
background: #ccc url(arrow-right.png) right center no-repeat; /* LTR */
}

quarta-feira, 31 de dezembro de 2014

Instalando o DRUSH (Drupal Shell) via FTP

Download e instalação do DRUSH (Drupal Shell) via FTP passo a passo


Vamos fazer o download, colocar no servidor com o Filezilla e colocar no path visto que pela linha de comando shell via SSH tem muitas peculiaridades de acordo com cada versão do servidor e acaba falhando apesar de prometer ser uma coisa ridiculamente simples.

Primeiramente vamos baixar o Drush pelo site oficial:
https://github.com/drush-ops/drush/tree/master

Opa! Onde começar? Procure o botão "Download zip" na coluna direita. Vai dar o link direto:
https://github.com/drush-ops/drush/archive/master.zip

Baixe-o, descompacte-o e faça upload dele pro servidor com o Filezilla para o diretório raiz do seu site (root). Não é onde ficam as páginas da web, é um diretório antes dele.

Depois renomeie a pasta drush-master para somente drush.

Localize o arquivo drush na pasta drush e altere suas permissões de arquivo para 744 para que ele seja executável. Equivalente a um chmod u+x drush/drush via SSH.

Configure seu sistema para reconhecer onde o drush está. Coloque o drush no path. Edite o arquivo .bashrc que está no raíz (root) e coloque as seguintes linhas:
export PATH="$PATH:/home/usuario/drush:/usr/local/bin"
alias drush='/home/usuario/drush/drush'
Onde /home/usuario é a pasta raíz do seu usuário no servidor ~.

Agora entre via SSH e execute o drush dentro da pasta onde está a instalação do Drupal. É assim que se trabalha com o Drush.





terça-feira, 23 de dezembro de 2014

INSTALAÇÃO VARNISH 3.0 UBUNTU C/ DRUPAL

INSTALAÇÃO VARNISH 3.0 UBUNTU C/ DRUPAL

Varnish-cache no Ubuntu para sites Drupal


   Vejamos como instalar o Varnish 3.0 para agilizar o Drupal. Encontrei muita informação desnecessária que faz você viajar 40 anos no deserto pra achar a terra prometida, enquanto que, precisamos ir direto ao assunto sem muitos detalhes acadêmicos. Daí, resolví publicar o passo-a-passo juntando tudo o que interessa pra fazer o Varnish rodar com o Drupal sem muito estudo.

   Os sites em Drupal são ótimos, mas pesados. O ideal é rodar o site em um provedor VPS para agilizar a reenderização; utilizar caches etc. Usar um servidor VPS com o Varnish já melhora 10x a velocidade do seu site feito em Drupal. No meu caso, a velocidade do carregamento do site caiu de 60´ para 6´. Ninguém gosta de sites lentos, então vamos lá.

   Você precisa de acesso SSH (Secure Shell) a um servidor VPS. Eu tenho um na Dreamhost que roda na plataforma Ubuntu 12Lts.

   Faça login no seu painel da Dreamhost. Então, você precisa criar um superusuário VPS > Admin Users > Add a new admin user

   Faça login via SSH. Pode usar o Putty para utilizar as seguintes linhas de comando.

Siga esses passos para instalar o Varnish 3.0 no servidor Ubuntu via Secure Shell (SSH):
  1. sudo su
  2. apt-get install apt-transport-https
  3. curl https://repo.varnish-cache.org/ubuntu/GPG-key.txt | apt-key add -
  4. echo "deb https://repo.varnish-cache.org/ubuntu/ precise varnish-3.0" >> /etc/apt/sources.list.d/varnish-cache.list
  5. apt-get update
  6. apt-get install varnish
Se deu tudo certo, o Varnish já está rodando no seu servidor.

   Agora você precisa configurar o módulo Varnish do Drupal com a chave secreta.
  Vai precisar ler o conteúdo do arquivo "secret" que está na pasta "/etc/varnish". Execute a seguinte linha de comando shell:
vim /etc/varnish/secret
   Pronto! Agora vá em admin/settings/varnish configurar o Varnish na página de administração do Drupal. Coloque esse código que você viu no arquivo /etc/varnish/secret no campo VARNISH CONTROL KEY. Salve e veja a mensagem "Server OK: 127.0.0.1:6082 Varnish running.".
-------------------------------------------x-x--------------------------------------------------------

  Você verá que o Drupal vai dizer que o Varnish está rodando normalmente. Entretanto, existem outras configurações que a fazer que não sei se são realmente necessárias e que podem deixar o seu servidor fora do ar por mal configuração. Isto porque existem várias plataformas (Ubuntu, Red hat, Debian, Ngix etc) e nelas várias configurações. Dificilmente se ensina o que temos que fazer, facilmente encontramos várias "receitas de bolo" que não servem para o nosso caso. Todavia, vou colocar aqui essas informações assim mesmo. Siga-as por sua própria conta e risco. No meu caso deu tudo errado e precisei solicitar o suporte técnica para restaurar a minha conta ao padrão original.

Veja em que porta o seu servidor está respondendo o protocolo HTTP. No caso o meu servidor VPS está na porta 80. Então, precisamos configurar o Varnish para escutar a porta certa editando o arquivo /etc/varnish/default.vcl

Abra o arquivo default.vcl com o editor VIM:

cd /etc/varnish
vim default.vcl

Encontre:
backend default {
      .host = "127.0.0.1";
      .port = "8080";
}
e deixe assim:
## Redirect requests to Apache, running on port 8000 on localhost
         backend apache {
                 .host = "127.0.0.1";
                 .port = "8000";
        }
## Fetch
sub vcl_fetch {
## Remove the X-Forwarded-For header if it exists.
         remove req.http.X-Forwarded-For;
## insert the client IP address as X-Forwarded-For. This is the normal IP address of the user.set    req.http.X-Forwarded-For = req.http.rlnclientipaddr;  
## Added security, the "w00tw00t" attacks are pretty annoying so lets block it before it reaches our webserver
         if (req.url ~ "^/w00tw00t") {
             error 403 "Not permitted";
         }
## Deliver the content
         return(deliver);
         }
## Deliver
sub vcl_deliver {
## We'll be hiding some headers added by Varnish. We want to make sure people are not seeing we're using Varnish.
## Since we're not caching (yet), why bother telling people we use it?
        remove resp.http.X-Varnish;
        remove resp.http.Via;
        remove resp.http.Age;
## We'd like to hide the X-Powered-By headers. Nobody has to know we can run PHP and have version xyz of it.
        remove resp.http.X-Powered-By;
}

   Depois salve o arquivo. Para isso, tecle Esc para entrar em modo de comando do VIM, então digite : (esse sinal de dois pontos indica que o que segue é um comando do VIM) e wq
  O comando w quer dizer write (salvar) e o q (quit) abandonar. Isto é, salva e sai.
   Caso você tenha bagunçado o arquivo e precise sair sem salvar, então tecle Esc :q!
   Resumindo:
Instale o apache2
 apt-get install libapache2-mod-rpaf
Deixe o Apache2 escutando a mesma porta do Varnish. Execute o comando:
vim /etc/apache2/ports.conf
Então você vai alterar as seguintes linhas assim:

NameVirtualHost *:80
Listen 80

Para:
NameVirtualHost *:8000
Listen 127.0.0.1:8000

NameVirtualHost *:8000 has no VirtualHosts. Para evitar esse erro, antes de reiniciar os serviços varnish e httpd2 você tem que mudar a configuração dos vhosts assim:
<VirtualHost *:80>
Para:
<VirtualHost *:8000>
Mas que bendito é vhosts? Bem, no meu caso fui achar arquivos com estas strings (palavras) no seguinte arquivo:
  • /dh/apache2/apache2-psXXXXX/etc/httpd.conf
Onde "psXXXXX" é o nome do seu servidor VPS na Dreamhost.
Edite com o vim: vim /dh/apache2/apache2-psXXXXX/etc/httpd.conf

Feitas as alterações agora sim você vai precisar reiniciar o Varnish e o Apache2. Execute a seguinte linha de comando:
 sudo /etc/init.d/varnish restart
 sudo /etc/init.d/httpd2 restart
Com o mouse copie e cole o código do arquivo "secret" no campo de configuração do Varnish do Drupal; Deixe o Varnish versão 3.0 e Ban-Lurker. Não precisa mexer em mais nada. Salve e veja que o Varnish está executando.

Caso você precise apagar o cache do Varnish (Varnish flush cache) você pode usar o comando:
varnishadm -T 127.0.0.1:6082 url.purge


Algumas fontes consultadas:
https://www.varnish-cache.org/installation/ubuntu
http://www.tecmint.com/install-varnish-cache-web-accelerator/
http://www.howtoforge.com/putting-varnish-in-front-of-apache-on-ubuntu-debian

sexta-feira, 5 de dezembro de 2014

Precisa de férias? Que tal a cidade eleita mais bonita do nordeste? Maceió/AL! Vem pra cá!
Passe uma temporada em Maceió, agende logo sua hospedagem no site: 

http://www.temporadamaceio.mcz-al.com.br/


Socorro! Virei coordenador de licitação!
Saiba como proceder em todos os casos com este site gratuito que ensina passo a passo tudo sobre licitação gratuitamente: https://licitacao.online

Você acha que o seu salário está errado? Tire todas as suas dúvidas em: http://www.numerabilis.cnt.br/empregados.shtml