Archive for the ‘How To’ Category

Service Unavailable HTTP Error 503 – Coisas que só o IIS pode “proporcionar” a você

Monday, July 12th, 2010

Das coisas que mais me irritam a mais especial é a falta de logs precisos por parte do sistema operacional. Em se tratando de Microsoft aí é que a coisa pega e pega FEIO!

Um dos erros que me fizeram gastar aproximadamente 8 horas de troubleshooting foi o erro Service Unavailable HTTP Error 503. Das coisas que mais se alegam são:

- Chaves pré-definidas junto aos serviços do IIS:
http://blogs.iis.net/webtopics/archive/2010/02/17/a-not-so-common-root-cause-for-503-service-unavailable.aspx
e
http://blogs.msdn.com/b/drnick/archive/2006/10/16/configuring-http-for-windows-vista.aspx

- Contas sem autoridade junto ao IIS:
http://social.msdn.microsoft.com/Forums/en/mdmsetup/thread/4689da4a-0452-45b6-bbb4-21ccb76d8ff9

- IIS operando com recursos de 32 bits em plataformas 64 bits:
http://forums.asp.net/p/1502755/3560390.aspx

- IIS com “loucuras” que só Deus para não duvidar:
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/55f71614-ef1b-4015-b9c8-a42c1e700c25.mspx?mfr=true

- Falaram que pode ser algum sysadmin modificando algo, por isso o downtime:
http://www.checkupdown.com/status/E503_pt.html
http://technet.microsoft.com/pt-br/library/cc736325%28WS.10%29.aspx

Caso você tenha “passado” pelos pontos acima e nenhum deles “sanou” seu problema, e além disso, você tem CERTEZA de que sua appweb está 100% depurada, debug 100% ok, tudo filé, e ainda tem CERTEZA que nenhum admin andou fazendo besteira em seu servidor, a saída pode ser alcançada da seguinte forma:

1 – Observe se existe alguma tabela corrompida em suas consultas SQL na appweb (caso consiga – detalhe, foi meu caso com BDs do tipo Mysql).
2 – Permissões em arquivos remotos ou tempo de resposta a tais chamadas.

Perceba que não é erro em nada de configuração, servidor e etc (evite loucuras como as minhas de tuning, pensando que era um erro de alto processamento, i/o e etc).

Normalmente os logs ineficientes (ex: 503 “n/a” nome do POOL_com_paranente_problema) do IIS falam que o pool de aplicativos “XXX” (nome que você deu ao pool) para rodar aplicativos DOTNET expirou/expulso/estuprou/estrangulou e etc a requisição (quer seja por POST ou GET). (na pasta logfiles dentro de windows – aonde o iis guarda seus logs)
O mais top dos erros:

1. “Connection_Dropped DefaultAppPool”
2. “Connection_Abandoned_By_AppPool DefaultAppPool”

Mesmo que você venha utilizar-se do software de debug que a MS tem, sinto muito em lhe avisar, mas será em vão utilizar-se tal ferramenta!
Siga os meus conselhos nas linhas em negrito, aquilo ali pode salvar seu dia. Use um frontend para executar suas querys e ver se não estão ali as saídas.

Ferramenta: http://support.microsoft.com/kb/919792/

Como extrair arquivos RAR (ou do WINRAR) no Ubuntu 10.04 (Lucid Lynx)?

Tuesday, June 29th, 2010

Se você, toda vez que tenta abrir (extrair) um arquivo rar recebe uma mensagem de erro informando que não consegue abrir o pacote, não se preocupe, é coisa simples de se resolver.

Os passos para o erro seguem-se na imagem abaixo:

Para resolver clique em Aplicativos -> Acessórios -> Terminal

No console digite:

sudo apt-get install rar

A saída deverá ser semelhante a isto (em uma plataforma x86):

Lendo listas de pacotes… Pronto
Construindo árvore de dependências
Lendo informação de estado… Pronto
Pacotes sugeridos:
unrar
Os NOVOS pacotes a seguir serão instalados:
rar
0 pacotes atualizados, 1 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
É preciso baixar 556kB de arquivos.
Depois desta operação, 1192kB adicionais de espaço em disco serão usados.
Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/multiverse rar 1:3.9.b2-1 [556kB]
Baixados 556kB em 5s (95,7kB/s)
Selecionando pacote previamente não selecionado rar.
(Lendo banco de dados … 183480 arquivos e diretórios atualmente instalados).
Desempacotando rar (de …/rar_1%3a3.9.b2-1_i386.deb) …
Processando gatilhos para man-db …
Configurando rar (1:3.9.b2-1) …

Pronto, agora basta tentar extrair novamente que não mais ocorrerá o erro.

Abraços.

Error on backups parallels plesk windows Meu windows apresenta erro no parallels plesk no momento do backup

Monday, June 28th, 2010


Este é o erro que está ocorrendo com você?

Error: Runtime error in pmmcli:
(3, ‘GetDiskFreeSpace’, ‘The system cannot find the path specified.’)
Traceback (most recent call last):
File “C:\Program Files\Parallels\Plesk\admin\share\pmmcli\pmmcli.py”, line 1846, in main
data_action_response, errcode_response, error_message = actions.get(sys.argv[1][2:])(parameters)
File “C:\Program Files\Parallels\Plesk\admin\share\pmmcli\pmmcli.py”, line 1721, in make_dump
return ActionRunner(MakeDumpAction, backup_task_description, None).doActivity()
File “C:\Program Files\Parallels\Plesk\admin\share\pmmcli\pmmcli.py”, line 75, in doActivity
result = self.processor.doActivity()
File “C:\Program Files\Parallels\Plesk\admin\share\pmmcli\pmmcli.py”, line 860, in doActivity
if osutil.free_bytes(local_dump_directory) < (long(disk_space_required) * 1048576):
File “C:\Program Files\Parallels\Plesk\admin\lib\python\osutil.py”, line 188, in free_bytes
sectorsPerCluster, bytesPerSector, numFreeClusters, totalNumClusters = GetDiskFreeSpace(os.path.splitdrive(path)[0] + “\\”)
error: (3, ‘GetDiskFreeSpace’, ‘The system cannot find the path specified.’)

Se é, antes de tentar seu backup, atualize o plesk para uma versão mais recente e o problema deverá estar sanado.

Como remover URLSCan do IIS

Monday, June 14th, 2010

Para remover o URLScan do IIS siga os passos abaixo no windows em inglês:

Start—> Programs—> Administrative Tools —> Services

Pare o IDC.

Agora vamos gerenciar o iis:

Start—> Programs Administrative Tools—> Internet Services
Manager

Dê um duplo clique no servidor e em seguida clique com o botão direito sobre Default Web Site. Clique nas propriedades (Properties).
Procure uma aba chamada ISAPI Filters, selecione UrlScan filter e clique em REMOVE.

Clique em Ok e depois reinicie todos os serviços referentes ao IIS.

Abraços.

Ispconfig 2: how to create a park domain – como deixar um domínio acessar o conteúdo do outro como park no ispconfig

Monday, June 7th, 2010

Uma das coisas mais interessantes no IspConfig é sua capacidade de permitir customizações em tudo que você possa imaginar. Aproveitando esta “boquinha” vamos fazer algo diferente.
Parkear domínios no Parallels Plesk e no Whm/CPanel é coisa fácil, pois tudo é automatizado, mas isto não quer dizer que o bom e velho vim (ou qualquer OUTRO EDITOR) não entre em ação.

Para isto, precisamos logar-nos como root no servidor aonde iremos parkear domínios, e devemos (antes de mais nada) fazer backup do arquivo de configuração do apache, sendo assim use o comando:

cp -rp /etc/httpd/conf/httpd.conf /root/httpd.conf.OLD


Temos então um arquivo garantido para que, em qualquer eventualidade sirva para consulta ou possivelmente correção do arquivo mais recente.

Entremos no arquivo de configuração:

vim /etc/httpd/conf/httpd.conf

Vá para o final do arquivo e localize exatamente este trecho:


Options ExecCGI -Indexes
AllowOverride None
AllowOverride Indexes AuthConfig Limit FileInfo
Order allow,deny
Allow from all

Deny from all

Feito isto, o que devemos fazer é simples.
Sabendo-se que o ISPConfig lê um outro arquivo com os vhosts dos usuários web, devemos antecipar nossa configuração de maneira que a linha do ispconfig fique abaixo do nosso vhost.

Acima da linha com a informação:

Include /etc/httpd/conf/vhosts/Vhosts_ispconfig.conf

Devemos fazer algo assim:

ServerName www.nomedodominioparkeado.com:80
ServerAdmin webmaster@dominiodestino.com.br
DocumentRoot /var/www/web100/web
ServerAlias dominiodestino.com.br
DirectoryIndex index.html index.htm index.php index.php5 index.php4 index.php3 index.shtml index.cgi index.pl index.jsp Default.htm default.htm
Alias /cgi-bin/ /var/www/web100/cgi-bin/
AddHandler cgi-script .cgi
AddHandler cgi-script .pl
ErrorLog /var/www/web100/log/error.log
AddType application/x-httpd-php .php .php3 .php4 .php5
php_admin_flag safe_mode On
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
Alias /stats “/var/www/web100/web/webalizer”
Alias /error/ “/var/www/web100/web/error/”
ErrorDocument 400 /error/invalidSyntax.html
ErrorDocument 401 /error/authorizationRequired.html
ErrorDocument 403 /error/forbidden.html
ErrorDocument 404 /error/fileNotFound.html
ErrorDocument 405 /error/methodNotAllowed.html
ErrorDocument 500 /error/internalServerError.html
ErrorDocument 503 /error/overloaded.html
AliasMatch ^/~([^/]+)(/(.*))? /var/www/web100/user/$1/web/$3
AliasMatch ^/users/([^/]+)(/(.*))? /var/www/web100/user/$1/web/$3

RewriteEngine on
RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
RewriteRule .* – [F]

Perceba que no começo falei XXX.XXX.XXX.XXX, isto refere-se ao ip do seu dedicado (shared ip dos domínios :P )

Por este vhost pegue a coisa em cheio.

A charada está nas linhas:

ServerName www.nomedodominioparkeado.com:80
ServerAdmin webmaster@dominiodestino.com.br
DocumentRoot /var/www/web100/web
ServerAlias dominiodestino.com.br

1 – indica o parkeamento
2 – email do main domain
3 – arquivos web de onde o parkeamento vai ler assim que o internauta acessar a página www.nomedodominioparkeado.com
4 – indica o destino do parkeamento, ou seja, ao acessar www.nomedodominioparkeado.com a pessoa na realidade acessa dominiodestino.com.br, porém tendo no cabeçalho o nome www.nomedodominioparkeado.com (url de entrada no navegador)


OBS: CASO O ARTIGO NÃO EXIBA AS TAGS DO APACHE, POR FAVOR VERIFIQUEM JUNTO AO ARQUIVO /ETC/HTTPD/CONF/HTTPD.CONF.

Abraços e espero ter contribuído com um dia feliz para nós… lol.
bye!

RoundCube Webmail fica tentando enviar ao clicar no envio mas não faz nada

Monday, June 7th, 2010

Se você está tentando enviar emails pelo RoundCube e sabe que o mesmo fica somente apresentando a mensagem “Enviando mensagem…” e não faz nada, tente as soluções abaixo:

1 – Como root use o comando:

/scripts/autorepair net_smtp_fix


(http://www.nerdblog.info/2009/11/04/webmail-no-cpanel-whm-nao-envia-mais-mensagens/)

Caso não resolva ainda podemos aplicar uma solução mais leve:

2 – Verifique se o CSF está instalado em seu servidor, cas0 sim, acesse o csf em seu WHM -> Plugins -> ConfigServer Security&Firewall -> clique em Firewall Configuration e procure por SMTP_ALLOWLOCAL, caso esteja como “0″ coloque “1″, save as configurações e reinicie seu CSF/LFD.

Caso não resolve (muito difícil de não sanar), vamos mergulhar mais fundo no problema, force uma atualização do RoundCube com o comando:

3 – logado como root:

/usr/local/cpanel/bin/update-roundcube –force

Caso ainda assim não alcance o resultado esperado, apele para update geral:

4 – Procure pelo arquivo -> /usr/local/cpanel/base/3rdparty/roundcube/config/main.inc.php, abra-o e edite procure pela linha:

$rcmail_config['smtp_user'] = ‘%u’;

e substitua a mesma por:

$rcmail_config['smtp_user'] = ‘ ‘;

Salve e saia, em seguida tente ver se o roudcube opera como desejado.

5 – Como root execute:

/scripts/upcp –force

Caso resolva, dê um whois neste domínio e envie uma caneca do Ubuntu, Uma camisa do Ubuntu ou uma caixa de bis!

Abraços.

RoundCube não está permitindo excluir mensagens. Pastas Trash, Send e Junk (lixeira, enviados e rascunho) não aparecem

Friday, May 21st, 2010

Se você não consegue ver as pastas do RoundCube “seus problemas SE ACABARAM-SE”.
O bendito, em sua versão stable (quase 100% stable) está com uma linda opção em off (FALSE).

Na pasta …roundcube/config/main.inc.php (se for no ispconfig: /home/admispconfig/ispconfig/web/roundcubemail/config/main.inc.php)
Apresentará este array aqui:

// automatically create the above listed default folders on login
$rcmail_config['create_default_folders'] = FALSE;

Salve seu dia assim:

$rcmail_config['create_default_folders'] = TRUE;

Pronto :D

Roundcube fixed!

create user output file. Command output: procmail: Error while writing to /var/mail…

Friday, May 21st, 2010

create user output file. Command output: procmail: Error while writing to /var/mail…

Se esta é a mensagem de erro que vem no outlook que de quem está enviando um email para um destinatário que usa postfix seus problemas “SE ACABARAM-SE”.

Entre no console e como root e digite:

postconf -e 'mailbox_size_limit = 0'

Provavelmente é a quota ferrada e este comando te tira da forca :D .

Sistemas afetados: Debian, Ubuntu (lucid lynx, karmic…), Centos 5.5, Centos 5.4…

Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][ODBC Microsoft Access Driver] Could not use ‘(unknown)’; file already in use., SQL state S1000 in SQLConnect in

Friday, May 21st, 2010

Antemão estou quase chorando por estar usando access, mas como se diz: “Sábio é o que dança conforme a música manda!”.
Estou desenvolvendo ferramentas para automatizar algumas replicações de dados de uma empresa e estou usando php (tecnologia) + access (isso é um banco?)

Este erro é ocasionado pelo fato de existir um drive fechando a conexão (na realidade aberto e acaba bloqueando novas conexões), por exemplo o Access abrindo a bendita base de dados access (.MDB).

Garanta que nada esteja abrindo o access database.

Uma forma de ver que isto está ocorrendo é observar se na pasta aonde o banco de dados esteja, exemplo nerdblog.mdb contenha também um arquivo nerdblog.ldb.

Ao fechar o driver ele automaticamente removerá o arquivo .LDB.

:D

Mais que uma distribuição: Ubuntu é uma paixão!

Tuesday, May 18th, 2010

Por estes dias estive trocando idéias com um amigo meu (dooguinha) que também adora Gnu/Linux, sobre qual distribuição usar, visto que estava com Windows XP em meu desktop pessoal e precisava de algo mais enriquecedor em termos de conhecimento (mexer com registro de Windows para remover falhas não é muito proveitoso, rsrsrs).

Resolvi voltar a utilizar-me do Ubuntu.

Antes quero expor alguns problemas que enfrentei antes desta escolha:

1 – Na tentativa de usar o OPENSUSE eu não poderia deixar de comentar da podridão que é em termos de velocidade de update nos repositórios do Opensuse, sem contar o drama que é para achar uma configuração avançada – resumo -> mv opensuse_my_desk /dev/null (apesar da excelente instalação em um hd ide de 320gb, e detecção de maneira louvável com ênfase em hardware),

2 – Na tentativa de usar o Fedora, o que mais me chamou atenção foi o boot todo voltado para arquitetura sata, ou seja, seu boot fica todo duro no /sbin/loader… Quem diria… o foguete ainda nem saiu do forno e já me deixou sem um minuto sequer desejoso em utiliza-lo. Sabe qual foi o fim? mv fedora_my_desk /dev/null,

3 – Na tentativa de usar o CentOS como desktop eu volto no ponto 2 e vivo o mesmo drama… mv centos_my_desk /dev/null.

Confesso que deixei o Ubuntu como sendo a última alternativa. Isto ocorreu devido um teste um pouco frustrado de utilizar-me da 10.04 em meu modesto desktop. Achei lento no uso, porém rápido no boot, e de maneira precipitada não lembrei que os repositórios estavam lotados graças a quantidade de fãs que esta distribuição faz a cada lançamento.

Decidi então subir manualmente o desktop, afim de obter algum “exclarecimento” no quesito velocidade de S.O., optei pela 9.10 subindo para Lucid. Abaixo segue um screen mostrando o primeiro ponto forte do Ubuntu aos meus olhos:


Após update, cheguei na Lucid e modifiquei os botões de janelas para a direita, afinal de contas de livre o mac só tem a escolha de compra do usuário!

Quer apontar os botões para o lado direito? Use:

gconftool-2 --type string --set "/apps/metacity/general/button_layout" "menu:minimize,maximize,close"

E para que isto se aplique a todos os users faça:

sudo gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string --set "/apps/metacity/general/button_layout" "menu:minimize,maximize,close"

Ambos comandos pedem autorização para rodar, aplique a senha do root e pronto!

Por fim vai um print do meu desktop :D (ainda nem terminei minhas customizações, mas gostei das tonalidades).

O dia de testes na penúltima utilização do Ubuntu foi quando criei o tutorial do LAMP2 no Lucid Lynx.

Ah, o problema somente será o espaço para o Slackware 13.1. Estou um pouco triste por que se continuar curtindo meu Ubuntu terminarei abandonando meu slackzinho :( .

Abraços e boa noite ALL!

Lamp2: Ubuntu 10.04 APACHE 2 Mysql 5 PHP 5 phpmyadmin (lucid lynx)

Tuesday, May 4th, 2010

Boa noite ALL, é com muita alegria que informo:

Meu PC está com o Lucid Lynx (Ubuntu 10.4).
Este How to que preparei hoje vai ensinar como montar um ambiente de desenvolvimento web para aplicações php que utilizam-se do container apache e do banco de dados mysql.
Um ambiente LAMP2 (apache 2 mysql 5 php 5 e phpmyadmin) é fundamental para quem desenvolve e deseja testar sua app antes de envia-la para web, sem mais, vamos aos passos:

1 – Clique em Aplicativos->Acessórios->Terminal
2 – rode o comando: sudo apt-get install apache2
Este comando serve para instalar o apache 2.
A saída deste comando deverá ser semelhante a esta:

Lendo listas de pacotes… Pronto
Construindo árvore de dependências
Lendo informação de estado… Pronto
Os pacotes extra a seguir serão instalados:
apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap
Pacotes sugeridos:
apache2-doc apache2-suexec apache2-suexec-custom
Os NOVOS pacotes a seguir serão instalados:
apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap
0 pacotes atualizados, 9 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
É preciso baixar 3328kB de arquivos.
Depois desta operação, 10,1MB adicionais de espaço em disco serão usados.
Você quer continuar [S/n]? S
0% [Aguardando por cabeçalhos]
Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/main libapr1 1.3.8-1build1 [116kB]
Obter:2 http://br.archive.ubuntu.com/ubuntu/ lucid/main libaprutil1 1.3.9+dfsg-3build1 [85,4kB]
Obter:3 http://br.archive.ubuntu.com/ubuntu/ lucid/main libaprutil1-dbd-sqlite3 1.3.9+dfsg-3build1 [27,1kB]
Obter:4 http://br.archive.ubuntu.com/ubuntu/ lucid/main libaprutil1-ldap 1.3.9+dfsg-3build1 [25,1kB]
Obter:5 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2.2-bin 2.2.14-5ubuntu8 [2622kB]
Obter:6 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2-utils 2.2.14-5ubuntu8 [159kB]
Obter:7 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2.2-common 2.2.14-5ubuntu8 [290kB]
Obter:8 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2-mpm-worker 2.2.14-5ubuntu8 [2364B]
Obter:9 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2 2.2.14-5ubuntu8 [1482B]
Baixados 3328kB em 40s (81,4kB/s)
Selecionando pacote previamente não selecionado libapr1.
(Lendo banco de dados … 148327 arquivos e diretórios atualmente instalados).
Desempacotando libapr1 (de …/libapr1_1.3.8-1build1_i386.deb) …
Selecionando pacote previamente não selecionado libaprutil1.
Desempacotando libaprutil1 (de …/libaprutil1_1.3.9+dfsg-3build1_i386.deb) …
Selecionando pacote previamente não selecionado libaprutil1-dbd-sqlite3.
Desempacotando libaprutil1-dbd-sqlite3 (de …/libaprutil1-dbd-sqlite3_1.3.9+dfsg-3build1_i386.deb) …
Selecionando pacote previamente não selecionado libaprutil1-ldap.
Desempacotando libaprutil1-ldap (de …/libaprutil1-ldap_1.3.9+dfsg-3build1_i386.deb) …
Selecionando pacote previamente não selecionado apache2.2-bin.
Desempacotando apache2.2-bin (de …/apache2.2-bin_2.2.14-5ubuntu8_i386.deb) …
Selecionando pacote previamente não selecionado apache2-utils.
Desempacotando apache2-utils (de …/apache2-utils_2.2.14-5ubuntu8_i386.deb) …
Selecionando pacote previamente não selecionado apache2.2-common.
Desempacotando apache2.2-common (de …/apache2.2-common_2.2.14-5ubuntu8_i386.deb) …
Selecionando pacote previamente não selecionado apache2-mpm-worker.
Desempacotando apache2-mpm-worker (de …/apache2-mpm-worker_2.2.14-5ubuntu8_i386.deb) …
Selecionando pacote previamente não selecionado apache2.
Desempacotando apache2 (de …/apache2_2.2.14-5ubuntu8_i386.deb) …
Processando gatilhos para man-db …
Processando gatilhos para ufw …
Processando gatilhos para ureadahead …
ureadahead will be reprofiled on next reboot
Configurando libapr1 (1.3.8-1build1) …

Configurando libaprutil1 (1.3.9+dfsg-3build1) ...

Configurando libaprutil1-dbd-sqlite3 (1.3.9+dfsg-3build1) ...
Configurando libaprutil1-ldap (1.3.9+dfsg-3build1) ...
Configurando apache2.2-bin (2.2.14-5ubuntu8) ...
Configurando apache2-utils (2.2.14-5ubuntu8) ...
Configurando apache2.2-common (2.2.14-5ubuntu8) ...
Enabling site default.
Enabling module alias.
Enabling module autoindex.
Enabling module dir.
Enabling module env.
Enabling module mime.
Enabling module negotiation.
Enabling module setenvif.
Enabling module status.
Enabling module auth_basic.
Enabling module deflate.
Enabling module authz_default.
Enabling module authz_user.
Enabling module authz_groupfile.
Enabling module authn_file.
Enabling module authz_host.
Enabling module reqtimeout.

Configurando apache2-mpm-worker (2.2.14-5ubuntu8) ...
* Starting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Configurando apache2 (2.2.14-5ubuntu8) ...

Processando gatilhos para libc-bin ...
ldconfig deferred processing now taking place

Ressalto que usei o gestor de pacotes e habilitei o suporte a pacotes instáveis e também o repositório partner (mais abaixo posto como fazer).

Ainda no console use o comando abaixo:

sudo apt-get install php5 libapache2-mod-php5
Isto servirá para instalar o php5 e ainda integra-lo como DSO no apache (como módulo).
A saída deste comando será semelhante a esta:

Lendo listas de pacotes... Pronto
Construindo árvore de dependências
Lendo informação de estado... Pronto
Os pacotes extra a seguir serão instalados:
apache2-mpm-prefork php5-common
Pacotes sugeridos:
php-pear php5-suhosin
Os pacotes a seguir serão REMOVIDOS:
apache2-mpm-worker
Os NOVOS pacotes a seguir serão instalados:
apache2-mpm-prefork libapache2-mod-php5 php5 php5-common
0 pacotes atualizados, 4 pacotes novos instalados, 1 a serem removidos e 0 não atualizados.
É preciso baixar 3376kB de arquivos.
Depois desta operação, 8790kB adicionais de espaço em disco serão usados.
Você quer continuar [S/n]? S
Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/main apache2-mpm-prefork 2.2.14-5ubuntu8 [2422B]
Obter:2 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main php5-common 5.3.2-1ubuntu4.1 [541kB]
Obter:3 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main libapache2-mod-php5 5.3.2-1ubuntu4.1 [2831kB]
Obter:4 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main php5 5.3.2-1ubuntu4.1 [1114B]
Baixados 3376kB em 8s (389kB/s)
dpkg: apache2-mpm-worker: problemas de dependência, mas removendo assim mesmo conforme pedido:
apache2 depende de apache2-mpm-worker (= 2.2.14-5ubuntu8) | apache2-mpm-prefork (= 2.2.14-5ubuntu8) | apache2-mpm-event (= 2.2.14-5ubuntu8) | apache2-mpm-itk (= 2.2.14-5ubuntu8); porém:
Pacote apache2-mpm-worker está para ser removido.
Pacote apache2-mpm-prefork não está instalado.
Pacote apache2-mpm-event não está instalado.
Pacote apache2-mpm-itk não está instalado.
(Lendo banco de dados ... 148902 arquivos e diretórios atualmente instalados).
Removendo apache2-mpm-worker ...
* Stopping web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
... waiting [ OK ]
Selecionando pacote previamente não selecionado apache2-mpm-prefork.
(Lendo banco de dados ... 148895 arquivos e diretórios atualmente instalados).
Desempacotando apache2-mpm-prefork (de .../apache2-mpm-prefork_2.2.14-5ubuntu8_i386.deb) ...
Selecionando pacote previamente não selecionado php5-common.
Desempacotando php5-common (de .../php5-common_5.3.2-1ubuntu4.1_i386.deb) ...
Selecionando pacote previamente não selecionado libapache2-mod-php5.
Desempacotando libapache2-mod-php5 (de .../libapache2-mod-php5_5.3.2-1ubuntu4.1_i386.deb) ...
Selecionando pacote previamente não selecionado php5.
Desempacotando php5 (de .../php5_5.3.2-1ubuntu4.1_all.deb) ...
Configurando apache2-mpm-prefork (2.2.14-5ubuntu8) ...
* Starting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Configurando php5-common (5.3.2-1ubuntu4.1) ...
Configurando libapache2-mod-php5 (5.3.2-1ubuntu4.1) ...

Creating config file /etc/php5/apache2/php.ini with new version
* Reloading web server config apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Configurando php5 (5.3.2-1ubuntu4.1) ...

Já que estamos na metade do caminho o ideal seria dar um restart no apache para garantir que ele leu seu conf.
Use o comando:

sudo /etc/init.d/apache2 restart

A saída deverá ser parecida com:

* Restarting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Para garantir que o apache está interpretando códigos php (fazendo uso do interpretador como módulo) podemos editar um arquivo e testa-lo. use o comando abaixo:

sudo vi /var/www/index.php

Dentro deste arquivo informe:

echo 'nerdblog é 10';
?>

escreva : e depois escreva wq! e pressione enter, ficando algo como :wq! , você salvará o arquivo e sairá do vi.
Feito isto acesse o arquivo para ver se a mensagem nerdblog é 10 aparece, caso sim, sucesso total! Do contrário releia este manual!
Este teste pode ser feito em http://localhost/index.php

Para instalar o mysql como servidor de banco de dados devemos usar o seguinte comando:
sudo apt-get install mysql-server
A saída deste comando deverá assemelhar-se com:

Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-common 5.1.41-3ubuntu12 [97,1kB]
Obter:2 http://br.archive.ubuntu.com/ubuntu/ lucid/main libnet-daemon-perl 0.43-1 [46,9kB]
Obter:3 http://br.archive.ubuntu.com/ubuntu/ lucid/main libplrpc-perl 0.2020-2 [36,0kB]
Obter:4 http://br.archive.ubuntu.com/ubuntu/ lucid/main libdbi-perl 1.609-1build1 [798kB]
Obter:5 http://br.archive.ubuntu.com/ubuntu/ lucid/main libmysqlclient16 5.1.41-3ubuntu12 [1931kB]
Obter:6 http://br.archive.ubuntu.com/ubuntu/ lucid/main libdbd-mysql-perl 4.012-1ubuntu1 [135kB]
Obter:7 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-client-core-5.1 5.1.41-3ubuntu12 [176kB]
Obter:8 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-client-5.1 5.1.41-3ubuntu12 [8136kB]
Obter:9 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-server-core-5.1 5.1.41-3ubuntu12 [4711kB]
Obter:10 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-server-5.1 5.1.41-3ubuntu12 [7007kB]
Obter:11 http://br.archive.ubuntu.com/ubuntu/ lucid/main libhtml-template-perl 2.9-1 [65,8kB]
Obter:12 http://br.archive.ubuntu.com/ubuntu/ lucid/main mysql-server 5.1.41-3ubuntu12 [93,0kB]
Baixados 23,2MB em 1min 58s (196kB/s)
Pré-configurando pacotes ...
Selecionando pacote previamente não selecionado mysql-common.
(Lendo banco de dados ... 150463 arquivos e diretórios atualmente instalados).
Desempacotando mysql-common (de .../mysql-common_5.1.41-3ubuntu12_all.deb) ...
Selecionando pacote previamente não selecionado libnet-daemon-perl.
Desempacotando libnet-daemon-perl (de .../libnet-daemon-perl_0.43-1_all.deb) ...
Selecionando pacote previamente não selecionado libplrpc-perl.
Desempacotando libplrpc-perl (de .../libplrpc-perl_0.2020-2_all.deb) ...
Selecionando pacote previamente não selecionado libdbi-perl.
Desempacotando libdbi-perl (de .../libdbi-perl_1.609-1build1_i386.deb) ...
Selecionando pacote previamente não selecionado libmysqlclient16.
Desempacotando libmysqlclient16 (de .../libmysqlclient16_5.1.41-3ubuntu12_i386.deb) ...
Selecionando pacote previamente não selecionado libdbd-mysql-perl.
Desempacotando libdbd-mysql-perl (de .../libdbd-mysql-perl_4.012-1ubuntu1_i386.deb) ...
Selecionando pacote previamente não selecionado mysql-client-core-5.1.
Desempacotando mysql-client-core-5.1 (de .../mysql-client-core-5.1_5.1.41-3ubuntu12_i386.deb) ...
Selecionando pacote previamente não selecionado mysql-client-5.1.
Desempacotando mysql-client-5.1 (de .../mysql-client-5.1_5.1.41-3ubuntu12_i386.deb) ...
Selecionando pacote previamente não selecionado mysql-server-core-5.1.
Desempacotando mysql-server-core-5.1 (de .../mysql-server-core-5.1_5.1.41-3ubuntu12_i386.deb) ...
Processando gatilhos para man-db ...
Configurando mysql-common (5.1.41-3ubuntu12) ...
Selecionando pacote previamente não selecionado mysql-server-5.1.
(Lendo banco de dados ... 150828 arquivos e diretórios atualmente instalados).
Desempacotando mysql-server-5.1 (de .../mysql-server-5.1_5.1.41-3ubuntu12_i386.deb) ...
Selecionando pacote previamente não selecionado libhtml-template-perl.
Desempacotando libhtml-template-perl (de .../libhtml-template-perl_2.9-1_all.deb) ...
Selecionando pacote previamente não selecionado mysql-server.
Desempacotando mysql-server (de .../mysql-server_5.1.41-3ubuntu12_all.deb) ...
Processando gatilhos para ureadahead ...
Processando gatilhos para man-db ...
Configurando libnet-daemon-perl (0.43-1) ...
Configurando libplrpc-perl (0.2020-2) ...
Configurando libdbi-perl (1.609-1build1) ...
Configurando libmysqlclient16 (5.1.41-3ubuntu12) ...

Configurando libdbd-mysql-perl (4.012-1ubuntu1) ...
Configurando mysql-client-core-5.1 (5.1.41-3ubuntu12) ...
Configurando mysql-client-5.1 (5.1.41-3ubuntu12) ...
Configurando mysql-server-core-5.1 (5.1.41-3ubuntu12) ...
Configurando mysql-server-5.1 (5.1.41-3ubuntu12) ...
mysql start/running, process 4808

Configurando libhtml-template-perl (2.9-1) ...
Configurando mysql-server (5.1.41-3ubuntu12) ...
Processando gatilhos para libc-bin ...
ldconfig deferred processing now taking place

--
No meio desse esquema todo serão exibidas janelas que solicitarão a senha de administrador do mysql, semelhantes as imagens abaixo:

Outra tela:

Estas telas pedem para que você dê uma senha para o usuário root do mysql, escolha uma senha ao seu gosto e depois repita a mesma.

Agora iremos integrar o php + apache + mysql + phpmyadmin, para isto precisaremos usar o comando:

sudo apt-get install libapache2-mod-auth-mysql php5-mysql phpmyadmin

A saída deste comando deverá ser algo mais ou menos parecido com isto aqui:

Lendo listas de pacotes... Pronto
Construindo árvore de dependências
Lendo informação de estado... Pronto
Os pacotes extra a seguir serão instalados:
dbconfig-common javascript-common libjs-mootools libmcrypt4 libt1-5 php5-gd php5-mcrypt wwwconfig-common
Pacotes sugeridos:
libmcrypt-dev mcrypt postgresql-client apache apache-ssl
Os NOVOS pacotes a seguir serão instalados:
dbconfig-common javascript-common libapache2-mod-auth-mysql libjs-mootools libmcrypt4 libt1-5 php5-gd php5-mcrypt php5-mysql phpmyadmin wwwconfig-common
0 pacotes atualizados, 11 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
É preciso baixar 5404kB de arquivos.
Depois desta operação, 21,9MB adicionais de espaço em disco serão usados.
Você quer continuar [S/n]? S
Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/main dbconfig-common 1.8.44ubuntu1 [474kB]
Obter:2 http://br.archive.ubuntu.com/ubuntu/ lucid/universe wwwconfig-common 0.2.1 [22,8kB]
Obter:3 http://br.archive.ubuntu.com/ubuntu/ lucid/universe javascript-common 7 [3854B]
Obter:4 http://br.archive.ubuntu.com/ubuntu/ lucid/main libapache2-mod-auth-mysql 4.3.9-12ubuntu1 [25,6kB]
Obter:5 http://br.archive.ubuntu.com/ubuntu/ lucid/universe libjs-mootools 1.2.4.0~debian1-1 [248kB]
Obter:6 http://br.archive.ubuntu.com/ubuntu/ lucid/universe libmcrypt4 2.5.8-3.1 [76,1kB]
Obter:7 http://br.archive.ubuntu.com/ubuntu/ lucid/main libt1-5 5.1.2-3build1 [155kB]
Obter:8 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main php5-gd 5.3.2-1ubuntu4.1 [34,8kB]
Obter:9 http://br.archive.ubuntu.com/ubuntu/ lucid/universe php5-mcrypt 5.3.2-0ubuntu1 [15,2kB]
Obter:10 http://br.archive.ubuntu.com/ubuntu/ lucid-proposed/main php5-mysql 5.3.2-1ubuntu4.1 [64,2kB]
Obter:11 http://br.archive.ubuntu.com/ubuntu/ lucid/universe phpmyadmin 4:3.3.2-1 [4285kB]
Baixados 5404kB em 45s (118kB/s)
Pré-configurando pacotes ...
Selecionando pacote previamente não selecionado dbconfig-common.
(Lendo banco de dados ... 150920 arquivos e diretórios atualmente instalados).
Desempacotando dbconfig-common (de .../dbconfig-common_1.8.44ubuntu1_all.deb) ...
Selecionando pacote previamente não selecionado wwwconfig-common.
Desempacotando wwwconfig-common (de .../wwwconfig-common_0.2.1_all.deb) ...
Selecionando pacote previamente não selecionado javascript-common.
Desempacotando javascript-common (de .../javascript-common_7_all.deb) ...
Selecionando pacote previamente não selecionado libapache2-mod-auth-mysql.
Desempacotando libapache2-mod-auth-mysql (de .../libapache2-mod-auth-mysql_4.3.9-12ubuntu1_i386.deb) ...
Selecionando pacote previamente não selecionado libjs-mootools.
Desempacotando libjs-mootools (de .../libjs-mootools_1.2.4.0~debian1-1_all.deb) ...
Selecionando pacote previamente não selecionado libmcrypt4.
Desempacotando libmcrypt4 (de .../libmcrypt4_2.5.8-3.1_i386.deb) ...
Selecionando pacote previamente não selecionado libt1-5.
Desempacotando libt1-5 (de .../libt1-5_5.1.2-3build1_i386.deb) ...
Selecionando pacote previamente não selecionado php5-gd.
Desempacotando php5-gd (de .../php5-gd_5.3.2-1ubuntu4.1_i386.deb) ...
Selecionando pacote previamente não selecionado php5-mcrypt.
Desempacotando php5-mcrypt (de .../php5-mcrypt_5.3.2-0ubuntu1_i386.deb) ...
Selecionando pacote previamente não selecionado php5-mysql.
Desempacotando php5-mysql (de .../php5-mysql_5.3.2-1ubuntu4.1_i386.deb) ...
Selecionando pacote previamente não selecionado phpmyadmin.
Desempacotando phpmyadmin (de .../phpmyadmin_4%3a3.3.2-1_all.deb) ...
Processando gatilhos para man-db ...
Processando gatilhos para libapache2-mod-php5 ...
* Reloading web server config apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]
Processando gatilhos para doc-base ...
Processing 26 changed 1 added doc-base file(s)...
Registering documents with scrollkeeper...
Configurando dbconfig-common (1.8.44ubuntu1) ...

Creating config file /etc/dbconfig-common/config with new version

Configurando wwwconfig-common (0.2.1) ...
Configurando javascript-common (7) ...

Configurando libapache2-mod-auth-mysql (4.3.9-12ubuntu1) ...
Configurando libjs-mootools (1.2.4.0~debian1-1) ...
Configurando libmcrypt4 (2.5.8-3.1) ...

Configurando libt1-5 (5.1.2-3build1) ...

Configurando php5-gd (5.3.2-1ubuntu4.1) ...
Configurando php5-mcrypt (5.3.2-0ubuntu1) ...
Configurando php5-mysql (5.3.2-1ubuntu4.1) ...
Configurando phpmyadmin (4:3.3.2-1) ...
dbconfig-common: writing config to /etc/dbconfig-common/phpmyadmin.conf

Creating config file /etc/dbconfig-common/phpmyadmin.conf with new version

Creating config file /etc/phpmyadmin/config-db.php with new version
granting access to database phpmyadmin for phpmyadmin@localhost: success.
verifying access for phpmyadmin@localhost: success.
creating database phpmyadmin: success.
verifying database phpmyadmin exists: success.
populating database via sql... done.
dbconfig-common: flushing administrative password
* Reloading web server config apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]

Processando gatilhos para libc-bin ...
ldconfig deferred processing now taking place

Neste meio tempo uma tela para escolher entre apache e lighttpd aparecerá, escolha apache. Veja:

Na primeira tela escolha OK e dê um tab para confirmar que aceita a opção.

A próxima tela pedirá uma senha de admin para o phpmyadmin, para isto defina algo seu. Veja a tela:

Costumo, após terminar uma instalação de integração como esta utilizar-me de lago, insira as seguintes linhas naquela página index.php usando sudo vim /var/www/index.php
Informe dentro dela o seguinte:

mysql_connect('localhost', 'root', 'suaSENHA') or die(mysql_error());
?>

Acesse http://localhost/index.php

Se nada ocorrer tudo está 100%.

Quando terminar use o comando:
sudo /etc/init.d/apache2 restart

Isto vai fazer o apache reler todos os confs.

Para concluir precisamos levar o phpmyadmin para a pasta web afim de que possamos editar nossos bds. Para isto precisamos copiar o phpmyadmin para dentro do /var/www usando o comando:

cp -rp /usr/share/phpmyadmin /var/www

Sendo assim, para acessar somente precisamos de um http://localhost/phpmyadmin

A parte interessante no quesito repositório vem de um how to bem interessante, veja:
http://www.howtoforge.com/the-perfect-desktop-ubuntu-10.04-lucid-lynx

Regras bacanas do Mod_Security 2 (apache 2)

Sunday, May 2nd, 2010

Olá ALL,

Uma coisa comum para combater uso indevido de cgi é impedir o uso de cgi (perl) em um servidor de hospedagem de sites compartilhada, mas nem sempre dá para impedir o uso.
Então uma das formas de contornar o uso indevido é aplicar regras do mod_security do apache afim de que possamos filtrar o máximo de requisições e ainda por cima ganhar com segurança.
Antemão quero salientar que uma das pragas mais comuns da web é o DM.CGI, esse carinha faz um estrago grandinho com spam, podendo levar um servidor para as mais conceituadas rbls. Como resolver?

No WHM, como root, siga para o último menu (PLUGINS) e procure pelo Mod Security.
CLique nele, dentro dele clique em Edit Configuration.
Dentro dela adicione as seguintes linhas:

SecRule REQUEST_URI “dm.cgi”
SecRule REQUEST_URI “dark.cgi”
SecRule REQUEST_URI “udp.pl”
SecRule REQUEST_BODY|REQUEST_URI “\.cgi\?m\=state”
SecRule REQUEST_BODY|REQUEST_URI “cgi\?m\=snd”
SecRule REQUEST_BODY|REQUEST_URI “cgi\?m\=icfg”
SecRule REQUEST_BODY|REQUEST_URI “\.pl\?m\=state”
SecRule REQUEST_BODY|REQUEST_URI “pl\?m\=snd”
SecRule REQUEST_BODY|REQUEST_URI “pl\?m\=icfg”

Isto irá salvar sua pele!

fonte: http://www.forumcpanel.com.br/index.php?showtopic=8608&hl=secrule

Subversion no Cpanel (how to use subversion server on cpanel/whm server)

Thursday, April 29th, 2010


Um amigo forista me passou nesta manha uma ferramenta interessante que foi desenvolvida por terceiros, mas que dá suporte ao Subversion no WHM/Cpanel. Quando conversei com Seto Ichitaka ele confirmou mesmo que a ferramenta funciona de forma bacaninha.

Algumas notas da empreitada podem ser vistas em:

http://forums.cpanel.net/f77/cpanelsvnmanager-beta-released-install-subversion-easily-149713.html

ou com a nota do site aonde o projeto está:

http://opensourcebattlefield.com/news/1

É fato que saibamos do seguinte:

1 – O plugin é iniciativa de terceiros,
2 – O plugin não está em stable, por isso qualquer update ou problema só tem 1 destino->reportBUG();

Abraços galera!

Avaliação abrangente do Ubuntu 10.04 beta 2

Thursday, April 22nd, 2010


Há 3 anos que venho utilizando-me do Ubuntu, mas há certas horas que “gosto de mudar as coisas” em busca de uma produtividade maior. Desta vez, após avaliar um review de um usuário, novamente me pego de queixo caído:

Será que não vale a pena ter o Ubuntu como single boot ao invés de tentar outro S.O.?

Já usei bastante o Fedora, que inclusive em sua versão 12 me trouxe uma sensação de establidade incrível (coisa aonde atirei muita pedra nas versões anteriores), mas como resistir a tanto automatismo e estabilidade?

Quer ver a avaliação que anda me convencendo que o Ubuntu é um dos mais aclamados S.O. de todos os tempos?
Vide:

http://marcinhostudiopro.blogspot.com/2010/04/review-ubuntu-104-beta-2.html

A próprosito, estou esperando sair o Stable para entrar com a cara e a coragem no single boot.

Forçando envio MX no Cpanel para situações de DNS não ajustado – Workaround

Saturday, April 17th, 2010

Recentemente, um cliente reclamou que seus emails não chegavam à caixa postal do destinatário.
Verifiquei que o domínio do destinatário em questão está hospedado em uma conta Windows na Locaweb, mas com os MX apontando para a Alog.
Eu tenho vários clientes com o Google Apps. Ou seja, estão hospedados no meu servidor mas utilizando o MX do Google. Todos funcionando beleza e nunca precisei editar configurações específicas no Exim do meu servidor. Mas neste caso, enquanto não se resolve a questão da configuração do DNS na Locaweb, optei por um recurso que eu desconhecia mas que atendeu ao meu cliente que agora consegue enviar os emails.
Resolvi compartilhar esta informação. Quem sabe alguem passe pelo mesma situação…
O problema foi resolvido adicionando a linha abaixo ao /etc/exim.conf:
allow_mx_to_ip = yes

Fonte: Luiz_Araujo:

http://www.forumcpanel.com.br/index.php?showtopic=8971&pid=40431&st=0&#entry40431

Como alterar o IP de saída do EXIM para um domínio no servidor de hospedagem com cPanel?

Tuesday, April 13th, 2010


Para alterar o IP de saída pelo EXIM, crie no arquivo abaixo a referência:

/etc/mailips

Ficando dessa forma:
seu-dominio.com.br: IP

Como ao reiniciar o exim pelo whm , ele limpa o arquivo, torne o arquivo imultável com o comando:

chattr +i /etc/mailips

Neste caso, em minha opinião o bacana poderia também colocar o +ai como parâmetro do chattr para reforçar a segurança do arquivo pois o Cpanel em alguns updates chega a utilizar-se de chattr para tirar proteções.

Fonte: http://eltern.wordpress.com/2010/04/08/como-alterar-o-ip-de-saida-do-exim-para-um-dominio-no-servidor-de-hospedagem-com-cpanel/

Phpmyadmin: Usuário ou senha incorretos

Monday, April 12th, 2010

Se você está recebendo a mensagem de erro ao tentar entrar no phpmyadmin do Cpanel (incorret user or password) peça para o administrador do servidor atualizar o cpanel usando o comando:

/scripts/upcp –force

Stable, Release, Current e Edge apresentam correção.

Caso isto não resolva veja se o arquivo:

/usr/local/cpanel/base/3rdparty/phpMyAdmin/config.inc.php

Está com as linhas:

$cfgServers[$i]['controluser']
$cfgServers[$i]['controlpass']

comentadas.

Caso sim, descomente.

Abraços galera.

Fantástico e seus problemas em um ambiente CPANEL: Resolvendo o shell_exec Warning: shell_exec()

Monday, April 5th, 2010


Se você utiliza-se do Fantástico DELUXE e nem em sonho entende o por que que este bendito pede shell_exec ativo, ou mesmo, conhece sobre shell_exec mas sabe que isto é um ponto a menos na segurança em um ambiente compartilhado, PSIU, se está precisando dele OFF esta dica é para você!

Para acabar de vez com a mensagem Warning: shell_exec() siga os passos abaixo:

(por prevensão vamos desabilitar o shell_exec no lugar correto)
Entre no /usr/local/lib/php.ini e insira a função shell_exec no parâmetro disable_functions
Em seguida use o seguinte comando:

/scripts/makecpphp

O Cpanel vai processar o php interno (não é o de uso dos domínios) do Cpanel e ajustar tudo :D .

Current hoje não, Realease é melhor! Cpanel/WHM updates: Specified package does not exist

Monday, April 5th, 2010


Hoje eu passei por algo bem contraditório em minhas pesquisas sobre cpanel.
Desde 2008 utilizo current no estilo de updates que seto nas máquinas de clientes e hoje (05/04/2010) me deparei com algo bem maluco, recebi a seguinte mensagem:

Specified package does not exist

Quando um usuário tentava mudar um plano (pacote) de sua revenda.

Como resolver?

A indicação dada é de que, em casos como este deixe o update em modo RELEASE e atualize seu painel de controle (/scripts/upcp –force).

Abraços pessoALL.

Warning: Parameter 2 to frontpage() expected to be a reference

Monday, April 5th, 2010


Este é um problema que vem atormentando usuários joomla em suas versões 1.0.x (x são variantes). Isto pode ocorrer também pelo fato da versão do php estar sendo 5.3.x.
Para sanar este problema é necessário aplicar um patch substituindo 2 arquivos:

/includes/Cache/Lite/Function.php
#Resolve o valor de referência

/includes/vcard.class.php
#Resolve problemas com formulários.

O patch segue no link abaixo:
http://www.libphp.net/fix_joomla_10x_php_530.zip