Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

    • Este material é compatível com as seguintes versões do Ubuntu:
    • Ubuntu Ubuntu 12.04 Precise Pangolin LTS

Se você possui um blog ou fórum em crescimento, vai chegar o dia em que uma simples hospedagem compartilhada não dará mais conta do recado, e um upgrade para um VPS ou servidor dedicado será necessário.

Uma boa hospedagem compartilhada, como a da Speedysparrow por exemplo, consegue suportar uma média de 6 a 7 mil visitantes únicos diários, mas sabemos que grande parte dessas hospedagens estarão pedindo arrego já nos primeiros mil visitantes, lhe obrigando a fazer este upgrade mesmo que você não tenha nenhum conhecimento no assunto.

Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Uma boa hospedagem é a diferença entre um site lento e um site “Speed Racer”

O resultado disso são milhares de blogs e fóruns promissores indo para o buraco, pois seus administradores não possuem o conhecimento necessário para configurar um servidor e os tutoriais disponíveis sobre o assunto na internet são antigos, inacabados ou até mesmo, errados.

O propósito dessa pequena série de tutoriais é lhe ajudar a instalar e configurar os pacotes necessários para rodar seu blog ou fórum de forma satisfatória, otimizada e segura. Pronto para dar este passo? Vamos lá então (:

Avisos iniciais

Antes de iniciarmos precisamos de uma pequena preparação mental e de ambiente. Vá para um local tranquilo, onde você possa se concentrar, pois as tarefas que vamos realizar nessa série de tutoriais requer paciência, tranquilidade e concentração.

Concentração e atenção são essenciais quando se trabalha com servidores

Concentração e atenção são essenciais quando se trabalha com servidores

Agora que você está em um local tranquilo, feche qualquer coisa que possa lhe distrair, como mensageiros instantâneos, redes sociais ou o HQ NUUX. Abra apenas o terminal e sua pasta pessoal, pois vamos utilizá-los bastante. Feito isso, que a diversão comece :)

Escolhendo a hospedagem certa para seu VPS

Em todo o tutorial estarei assumindo que seu servidor possui uma CPU com apenas um núcleo disponível e 786 megabytes de memória RAM. Além disso, estarei assumindo que o servidor está localizado nos Estados Unidos e que os discos rígidos estão em RAID 10, permitindo uma boa velocidade de leitura e escrita. Tudo isso rodando via OnApp com o Ubuntu 12.04 Server instalado.

VPS com Ubuntu Server 12.04 na Speedysparrow

Plano VM2 da Speedysparrow possui tudo o que precisamos por $ 38,00

As configurações citadas acima se encontram no plano VM2 da Speedysparrow, que você pode adquirir por $ 38,00 (algo em torno de R$ 75,00). Na página da empresa eles oferecem apenas CentOS e CloudLinux, mas basta pedir ao Eric ou ao Sean que eles farão a instalação do Ubuntu 12.04 Server. Em breve farei um artigo falando sobre os serviços da empresa e porque a recomendo para meus clientes, mas por hora, você terá que confiar no que estou dizendo.

Recomendo fortemente que escolha a empresa citada, pois tenho experiência com ela e posso afirmar que os serviços são de excelente qualidade, além de oferece um suporte que posso qualificar como 11/10. Caso não confie no meu julgamento e experiência, deixo um último aviso, na esperança de que o siga: NÃO escolha hospedagens brasileiras. As mesmas que me desculpem, mas os serviços, preços e softwares ainda estão muito aquém dos oferecidos pelas hospedagens internacionais, e infelizmente, ainda usam e abusam do chamado oversell.

Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Fique de olho: disco e transferência ilimitadas NÃO existem! Que feio hein Host Gator?

Instalando o Nginx no Ubuntu Server 12.04

A menos que você trabalhe ou esteja em contato com o ramo de hospedagem de sites, você talvez nunca tenha ouvido falar do Nginx. O Nginx é um servidor web open source que faz praticamente tudo que o Apache faz, só que muito mais rápido! Sim, a época de ouro do Apache acabou, temos um novo garoto popular na área.

Nginx: servidor web open source que faz praticamente tudo que o Apache faz, só que muito mais rápido

Nginx: servidor web open source que faz praticamente tudo que o Apache faz, só que muito mais rápido

Ele possui um excelente desempenho e um consumo de memória baixíssimo, o que o torna ideal para o VPS que temos em mãos para este tutorial. Logue-se via SSH no seu VPS com os dados enviados pela hospedagem e vamos colocar as mãos na massa!

A versão do Nginx disponível nos repositórios oficiais do Ubuntu 12.04 é a 1.1.19, mas queremos a usar a versão estável atual, então vamos adicionar o repositório PPA oficial do Nginx ao nosso VPS. Para isso, digite o seguinte comando no terminal:

nano /etc/apt/sources.list

Com o arquivo de repositórios aberto, navegue até o final do arquivo com as setas de direção do seu teclado e adicione a linha abaixo:

deb http://ppa.launchpad.net/nginx/stable/ubuntu precise main
Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Adicione o repositório PPA do Nginx no final do arquivo sources.list

Feito isso, aperte <Ctrl + O> para salvar e <Ctrl + X> para fechar o arquivo e voltar ao terminal. Agora ainda com o terminal aberto, vamos adicionar a chave de autentificação do PPA, atualizar a lista de repositórios e atualizar o sistema todo. Copie e cole os comandos abaixo, lembrando de dar enter ao final de cada linha:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C300EE8C
sudo apt-get update && sudo apt-get upgrade

Agora que nosso sistema está atualizado e o repositório oficial do Nginx está adicionado a ele, está na hora de instalarmos este maravilhoso servidor web. Para isso, digite o seguinte comando no terminal:

sudo apt-get install nginx

Pronto, nosso servidor web está instalado! Vamos deixar para iniciá-lo depois, quando tivermos tudo pronto. Vamos a instalação do PHP-FPM e do APC agora? (:

Instalando PHP-FPM e APC no Ubuntu Server 12.04

Neste passo vamos instalar o PHP-FPM para cuidar do PHP do WordPress, phpBB ou qualquer que seja o script que você esteja usando. O PHP-FPM é uma alternativa ao PHP FastCGI com algumas funcionalidades adicionais voltadas a sites com grandes números de acessos, o que é exatamente o que estamos querendo aqui.

Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Combine o Nginx com o PHP-FPM e o PHP-APC e tenha um site ao estilo The Flash (:

Também vamos instalar uma extensão do PHP que irá nos ajudar muito, o PHP-APC. Resumindo mal e porcamente, o APC é um cache de op-code que aumenta significativamente o desempenho do seu site ou fórum. Vamos lá?

Assumindo que você não fechou o terminal ainda, copie e cole os comandos abaixo:

sudo apt-get install php5-fpm php5-suhosin php-apc php5-gd php5-imagick php5-curl

Aguarde a instalação terminar e voilà! Temos o PHP-FPM e o APC instalados no sistema. Hora de instalar o MySQL Server (:

Instalando o MySQL Server no Ubuntu Server 12.04

Como o foco deste tutorial é, principalmente, o WordPress, vamos fazer a instalação do MySQL como banco de dados padrão. Mas ao invés de usarmos o servidor MySQL da Oracle, usaremos um fork criado pela Percona, que mantém compatibilidade total com o da Oracle mas oferece melhor performance e uso de recursos.

O Percona’s MySQL Server não está disponível nos repositórios padrões do Ubuntu Server 12.04, portanto vamos adicionar os repositórios da própria Percona. Para isso, ainda com o terminal aberto, copie e cole o seguinte comando:

gpg --keyserver  hkp://keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A
gpg -a --export CD2EFD2A | sudo apt-key add -
nano /etc/apt/sources.list

Com as chaves instalados e o arquivo de repositórios aberto, navegue até o final do arquivo com as setas de direção do seu teclado e adicione a linha abaixo logo após a linha do Nginx:

deb http://repo.percona.com/apt precise main

Apertepara salvar epara fechar o arquivo e voltar ao terminal. Ainda com o terminal aberto, vamos adicionar atualizar a lista de repositórios, atualizar o sistema todo e fazer a instalação do servidor MySQL. Copie e cole os comandos abaixo, lembrando de dar enter no:

sudo apt-get update && sudo apt-get install percona-server-server-5.5 php5-mysql

Preste atenção na instalação pois será pedido para você digitar uma senha para o usuário root do banco de dados. Use uma senha grande e segura, e anote-a em algum lugar onde você pode lembrar-se. Recomendo usar o KeePassX, um gerenciador de senhas muito eficiente e simples de usar.

Instalando o Varnish no Ubuntu Server 12.04

O Varnish é um acelerador de requisições HTTP que deixa seu site insanamente mais rápido, ainda mais quando em conjunto com o Nginx, PHP-FPM e APC. Ele é basicamente um proxy HTTP reverso que fica entre o usuário e o servidor web, fazendo uma análise dos conteúdos mais acessados e armazenando-os em cache na memória RAM.

Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Red Bull pode até te dar asas, mas é o Varnish Cache que fará seu blog voar

Costumo dizer que o Varnish é como os famosos tanks dos MMORPGs: fica na linha de frente levando porrada e deixando as coisas mais fáceis para quem está atrás poder fazer seu serviço. Além de acelerar seu website, o Varnish também pode ser uma bela linha de segurança contra ataques DDoS, então o considero essencial em qualquer setup.

A instalação no Ubuntu Server 12.04 é bem simples, visto que ele está disponível nos repositórios oficiais. Ainda com o terminal aberto, copie e cole os comandos abaixo:

sudo apt-get install varnish

E agora… bem, é só isso mesmo. O Varnish está instalado e pronto para ser configurado (:

Configurando e fazendo os serviços se comunicarem

Agora que temos todos os serviços necessários instalados, está na hora de configura-los de forma que eles se comuniquem e funcionem da forma mais otimizada possível. Vamos começar pelo PHP-FPM, já que é a configuração mais rápida.

Com o terminal aberto, copie e cole o comando abaixo:

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

Usando as setas direcionais do seu teclado, procure pela linha listen = 127.0.0.1:9000 e coloque um # na frente dela. Abaixo dessa linha cole o seguinte:

listen = /var/run/php5-fpm.sock
Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Configure o PHP-FPM de forma que o PHP seja executado via socket unix

Dessa forma estamos dizendo ao PHP-FPM que ele deve executar o PHP como um socket unix. Pode não fazer sentido para você, mas como estamos falando de um único servidor, essa é a forma mais otimizada de se trabalhar.

Procure também a linha #listen.owner = www-data e tire o # da frente dela. Faça a mesma coisa com as duas linhas abaixo dessa, ficando assim:

listen.owner = www-data
listen.group = www-data
listen.mode = 0666

Se você criou outro usuário, pode usa-lo no lugar do www-data também, mas para este tutorial vamos ficar com o usuário padrão do PHP-FPM mesmo.

Feito isso, o PHP-FPM está configurado e pronto para a ação. Vamos ao Nginx? Copie e cole os comandos abaixo no terminal para editar o arquivo padrão de configurações de sites do servidor web:

nano /etc/nginx/sites-available/default

Edite o arquivo usando as setas direcionais e deixo-o como mostrado abaixo:

server {
    listen       8080;
    server_name www.seusite.com seusite.com;
    root         /var/www/;

    index index.php index.html index.htm;

    error_log /var/log/nginx/logsdosite.com-error_log;

    location / {
		try_files $uri $uri/ /index.php;
        }
    location = /favicon.ico {
	log_not_found off;
	access_log off;
        }

    location = /robots.txt {
	allow all;
	log_not_found off;
	access_log off;
        }

    location ~ /. {
	deny all;
	access_log off;
	log_not_found off;
        }

    location ~* ^/wp-content/uploads/.*.php$ {
	deny all;
	access_log off;
	log_not_found off;
        }
    location ~ .php$ {
                try_files $uri =404;

		include /etc/nginx/fastcgi_params;
    		fastcgi_index index.php;
    		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 		if (-f $request_filename) {
        		fastcgi_pass unix:/var/run/php5-fpm.sock;
    		}
	}
}

Mude “www.seusite.com” e “seusite.com” para os links do seu site e tudo deverá funcionar corretamente agora. Agora que temos o Nginx configurado e rodando, hora de configurar o PHP-APC :)

Copie e cole os comandos abaixo:

nano /etc/php5/fpm/php.ini

Agora com o arquivo aberto, adicione as linhas abaixo no local que achar melhor:

[APC]
extension=apc.so
apc.enabled = 1
apc.cache_by_default = 1
apc.stat = 1
apc.shm_segments = 1
apc.shm_size = 64
apc.write_lock = 1
apc.slam_defense = 0
apc.ttl = 7200
apc.user_ttl = 7200

Com o APC configurado temos quase tudo pronto, faltando apenas o Varnish. A configuração do Varnish é um pouco mais chata, então neste tutorial vou focar apenas em uma configuração para o WordPress, deixando outros scripts em aberto.

Primeiramente temos que editar o arquivo principal de configuração do Varnish, então digite o comando abaixo no terminal:

nano /etc/default/varnish

Primeiramente mude a linha “START” de “no” para “yes”, sem as aspas. Agora procure pela linha “Alternative 2, Configuration with VCL” e deixa-a como mostrado abaixo:

DAEMON_OPTS="-a :80 
             -T localhost:6082 
             -f /etc/varnish/default.vcl 
             -S /etc/varnish/secret 
	     -p thread_pool_add_delay=2 
	     -p thread_pools=4 
	     -p thread_pool_min=200 
	     -p thread_pool_max=4000 
	     -p cli_timeout=25 
	     -p session_linger=100 
             -s malloc,512M"

Com essas configurações feitas, vamos as configurações específicas para o WordPress. Digite o comando abaixo no terminal:

nano /etc/varnish/default.vlc

Agora deixe-o como mostrado no código abaixo, que foi retirado deste GitHub e editado minimamente:

backend default {
    .host = "127.0.0.1";
    .port = "8080";
    .first_byte_timeout = 300s;
}

acl purge {
	# Only localhost can purge my cache
	"127.0.0.1";
	"localhost";
}

sub vcl_recv {
	if ((req.http.host ~ "(ubuntubrsc.com)")) {
		set req.backend = default;
	} else {
		return (pass);
	}

        if (req.request == "PURGE") {
		if (!client.ip ~ purge) {
			error 405 "This IP is not allowed to send PURGE requests.";
		}
		return (lookup);
	}

        if (req.request == "POST") {
		return (pass);
	}

        if (req.url ~ "/feed") {
		return (pass);
	}

	if (req.url ~ "/wp-(login|admin)") {
		return (pass);
	}

	set req.http.Cookie = regsuball(req.http.Cookie, "has_js=[^;]+(; )?", "");

	set req.http.Cookie = regsuball(req.http.Cookie, "__utm.=[^;]+(; )?", "");

	set req.http.Cookie = regsuball(req.http.Cookie, "__qc.=[^;]+(; )?", "");

	set req.http.Cookie = regsuball(req.http.Cookie, "wp-settings-1=[^;]+(; )?", "");

	set req.http.Cookie = regsuball(req.http.Cookie, "wp-settings-time-1=[^;]+(; )?", "");

	set req.http.Cookie = regsuball(req.http.Cookie, "wordpress_test_cookie=[^;]+(; )?", "");

	if (req.http.cookie ~ "^ *$") {
		    unset req.http.cookie;
	}

	if (req.url ~ ".(css|js|png|gif|jp(e)?g|swf|ico|ttf|otf)") {
		unset req.http.cookie;
	}

	if (req.http.Accept-Encoding) {
		if (req.url ~ ".(jpg|png|gif|gz|tgz|bz2|tbz|mp3|ogg)$") {
			   	remove req.http.Accept-Encoding;
		} elsif (req.http.Accept-Encoding ~ "gzip") {
		    	set req.http.Accept-Encoding = "gzip";
		} elsif (req.http.Accept-Encoding ~ "deflate") {
		    	set req.http.Accept-Encoding = "deflate";
		} else {
			remove req.http.Accept-Encoding;
		}
	}

	if (req.http.Cookie ~ "wordpress_" || req.http.Cookie ~ "comment_") {
		return (pass);
	}
	if (!req.http.cookie) {
		unset req.http.cookie;
	}

	if (req.http.Authorization || req.http.Cookie) {
		return (pass);
	}

	return (lookup);
}

sub vcl_pipe {
	return (pipe);
}

sub vcl_pass {
	return (pass);
}

sub vcl_hash {
 	hash_data(req.url);
 	if (req.http.host) {
     	hash_data(req.http.host);
 	} else {
     	hash_data(server.ip);
 	}

    	if (req.http.Accept-Encoding) {
        	hash_data(req.http.Accept-Encoding);
	}

	return (hash);
}

sub vcl_hit {
	if (req.request == "PURGE") {
		purge;
		error 200 "Purged.";
	}

	return (deliver);
}

sub vcl_miss {
	if (req.request == "PURGE") {
		purge;
		error 200 "Purged.";
	}

	return (fetch);
}

sub vcl_fetch {
	if (req.url ~ ".(css|js|png|gif|jp(e)?g|swf|ico|ttf|otf)") {
		unset beresp.http.cookie;
	}

	set beresp.ttl = 1800s;

	return (deliver);
}

sub vcl_deliver {
	if (obj.hits > 0) {
		set resp.http.X-Cache = "cached";
	} else {
		set resp.http.x-Cache = "uncached";
	}

	unset resp.http.X-Powered-By;

	unset resp.http.Server;

	return (deliver);
}

sub vcl_init {
 	return (ok);
}

sub vcl_fini {
 	return (ok);
}

Com o Varnish devidamente configurado, nosso servidor está pronto para ser testado! Vamos iniciar todos os serviços com o comando abaixo e testar para ver se tudo está funcionando corretamente:

sudo /etc/init.d/php5-fpm start
sudo /etc/init.d/nginx start
sudo /etc/init.d/mysql start
sudo /etc/init.d/varnish start

Agora basta acessar o IP do seu VPS e tudo deve estar funcionando corretamente (:

Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Bem vindo ao Nginx, o melhor servidor web open source da atualidade (:

O próximo passo é fazer uma otimização em todos os arquivos de configuração para tirar máximo proveito das suas configurações, mas isso fica para o próximo tutorial.

Além da otimização, também temos que cuidar da segurança do seu VPS antes de podermos ir ao ar, e este é outro detalhe que ficará para um próximo tutorial. Espere ambos ainda essa semana :)

Bônus: instalando o WordPress no Ubuntu Server 12.04

De nada adianta todo esse trabalho se eu deixar vocês na mão bem na hora da instalação, né? Então vamos aprender a instalar o WordPress no VPS que acabamos de configurar e como sou um cara legal, também vou deixar uma indicação dos plugins que você deve utilizar para fazer seu blog voar (:

Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

WordPress: a melhor plataforma de blogs na minha opinião (e meu ganho pão :P)

Antes de mais nada, vamos fazer uma pequena edição no arquivo de configurações do MySQL, para termos certeza de que teremos um ambiente otimizado para nosso VPS. Para isso, ainda com o terminal aberto, digite o comando abaixo:

nano /etc/mysql/my.cnf

Agora adicione as linhas abaixo logo depois da linha lc-messages-dir = /usr/share/mysql:

default_storage_engine=MyISAM
skip_external_locking
skip_slave_start
skip_name_resolve
ignore_builtin_innodb

Salve o arquivo e agora podemos iniciar o MySQL. Para isso, digite o seguinte comando no terminal:

sudo /etc/init.d/mysql start

Com nosso servidor MySQL rodando, está na hora de criar o usuário e banco de dados do nosso WordPress. Para isso precisamos entrar no MySQL e usar alguns comandos básicos. Digite o comando abaixo para começar e aperte enter:

mysql -u root -p

Digite a senha que você configurou quando estava instalando o servidor MySQL e digite os comandos abaixo para criar seu usuário e banco de dados:

CREATE DATABASE nomedoseubanco;
CREATE USER 'nomedeumusuario'@'localhost' IDENTIFIED BY 'senhadesseusuario';
GRANT ALL PRIVILEGES ON nomedoseubanco.* TO "nomedeumusuario"@"localhost" IDENTIFIED BY "senhadesseusuario";
FLUSH PRIVILEGES;
EXIT;

Substitua o nome do banco de dados, nome do usuário e senha pelo o que você achar melhor, mas NÃO use os valores que coloquei ali por padrão. Com seu banco de dados e usuário criados, vamos editar as configurações do Nginx um pouco. Para isso abra o arquivo de configuração digitante o comando abaixo:

nano /etc/nginx/sites-available/default

Com o arquivo de configurações do Nginx aberto, deixe-o parecido com o mostrado abaixo:

server {

	listen 8080;
	server_name www.seusite.com;

	# Root directory
	root /var/www;
	index index.php index.html index.htm;

        error_log /var/log/nginx/logsdosite.error_log;

	location / {
		try_files $uri $uri/ /index.php;
        }

        location = /favicon.ico {
	log_not_found off;
	access_log off;
        }

        location = /robots.txt {
	allow all;
	log_not_found off;
	access_log off;
        }

        location ~ /. {
	deny all;
	access_log off;
	log_not_found off;
        }

        location ~* ^/wp-content/uploads/.*.php$ {
	deny all;
	access_log off;
	log_not_found off;
        }

        rewrite /wp-admin$ $scheme://$host$uri/ permanent;

	error_page 404 = @wordpress;
	log_not_found off;

	location @wordpress {
		include /etc/nginx/fastcgi_params;
		fastcgi_pass unix:/var/run/php5-fpm.sock;
        	fastcgi_param SCRIPT_NAME /index.php;
        	fastcgi_param SCRIPT_FILENAME $document_root/index.php;
    	}

	location ~ .php$ {
                try_files $uri =404;

		include /etc/nginx/fastcgi_params;
    		fastcgi_index index.php;
    		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 		if (-f $request_filename) {
        		fastcgi_pass unix:/var/run/php5-fpm.sock;
    		}
	}

      }
server {
	server_name seusite.com;
	return 301 $scheme://www.seusite.com$request_uri;
}

Agora temos quase tudo necessário para instalar o WordPress. O que falta? O próprio WordPress é claro :P

Download do WordPress 3.4

WordPress 3.3.2 WordPress 3.4.1 é a última versão estável disponível

Vamos criar nosso diretório padrão e fazer download da última versão do WordPress com o wget, mas antes temos que reiniciar o Nginx para as configurações acima surtirem efeito. Hora de brincar com o terminal novamente, lembrando de dar enter ao final de cada linha:

sudo /etc/init.d/nginx restart
mkdir -p /var/www/
chown www-data:www-data /var/www/
chmod 705 /var/www/
cd /tmp
wget http://br.wordpress.org/wordpress-3.4.1-pt_BR.tar.gz
tar zxvf wordpress-3.4.1-pt_BR.tar.gz
cd wordpress
mv * /var/www/
chown -R www-data:www-data /var/www/*

Feito o download do WordPress, vamos configura-lo e finalmente fazer a instalação. Digite o comando abaixo no terminal:

cp /var/www/wp-config-sample.php /var/www/wp-config.php
chown www-data:www-data /var/www/wp-config.php
nano /var/www/wp-config.php

Agora você terá que configurar as variáveis do WordPress de acordo com os dados que possui. O arquivo de configuração é todo comentado, então não creio que eu precise explicar aonde vai cada dado, só lembre-se que o banco de dados e o usuário que é pedido no wp-config.php são aqueles que você configurou neste tutorial bônus, e não o root lá do começo.

Assim que você terminar de editar o arquivo de configuração, acesse o IP do seu VPS e se tudo estiver correto, você poderá seguir os passos de instalação tranquilamente. Com seu WordPress instalado, vamos editar algumas coisas para melhorar a segurança:

rm /var/www/wp-admin/install.php
rm /var/www/wp-admin/install-helper.php
rm /var/www/license.txt
rm /var/www/readme.html
chmod 705 /var/www/wp-admin/
chmod 705 /var/www/wp-includes/
chmod 404 /var/www/index.php
chmod 404 /var/www/wp-blog-header.php
chmod 404 /var/www/wp-config.php

Pronto! Agora que estamos um pouco mais seguros, que tal brincarmos com uma das melhores coisas disponíveis para o WordPress? Abaixo segue uma recomendação de alguns plugins essenciais para qualquer blog WordPress:

  • BackWPup: plugin que faz backup de todo o blog (banco de dados/arquivos) e envia para o local de sua preferência. Backups são importantíssimos, não deixe esse plugin passar;
  • Better WP Security: um ótimo plugin de segurança, com inúmeras opções para deixar seu blog mais seguro. Recomendo configurar o plugin para não editar arquivos automaticamente, devido a natureza do nosso setup;
  • nginx Compatibility: este plugin faz com que o WordPress e o Nginx fiquem melhores amigos. Essencial para nosso setup;
  • W3 Total Cache: melhor plugin de cache disponível até hoje. Se bem configurado, é o melhor amigo de qualquer blogueiro e transforma seu blog no The Flash;
  • WordPress SEO by Yoast: plugin escrito pelo Jedi em SEOJoost de Valk. Melhor plugin da atualidade para este serviço, também é essencial para qualquer blog WordPress.

Considerações finais

Com isso encera-se a primeira parte do nosso tutorial. Agora você tem em suas mãos o Ubuntu Server 12.04 rodando um servidor LEMP completo e um blog WordPress pronto para começar a ser usado. Na próxima parte do tutorial iremos focar na otimização desse servidor e do WordPress como um todo também, partindo para a parte de segurança e por último, vou ensinar como usar o CloudFlare como uma segunda camada de segurança e como seu servidor DNS.

Após essa primeira parte do tutorial e algumas otimizações que não estão presentes aqui, eis o que conseguimos:

Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Sem muita otimização nosso VPS já pode, teoricamente, receber quase 10 milhões de pageviews diários

Sim meu amigo, nosso pequeno VPS é capaz de suportar quase 10 milhões de pageviews diários com essas configurações. O uso da CPU nos meus testes não passou de 14% e o consumo de memória ficou em 180~200 megabytes. Bem legal hein?

Instalando Nginx, PHP-FPM, APC, Varnish e MySQL no Ubuntu Server 12.04

Note que durante os testes o uso da CPU estava em 9.2%, mas 9% estava sendo usado apenas pelo htop

Gostou do tutorial leitor? O que achou das estatísticas? O que acha que poderíamos melhorar? O que você espera das minhas otimizações para a próxima parte? Deixe seu comentário abaixo! Quero ler que ajudei vocês e ficar feliz com isso!

Caso você não queira esperar até o próximo tutorial sair ou tiver medo de colocar a mão na massa, ofereço serviços de otimização para blogs WordPress e claro, ofereço otimização de servidores para o setup acima. Entre meus felizes clientes estão os blogs Mestre Android e Vida de Suporte e claro, o Ubuntu-BR-SC. Basta entrar em contato comigo em julian@ubuntubrsc.com  (:

Assine nossa newsletter!

Quer receber as novidades mais recentes do Ubuntu na sua caixa de entrada? Informe seu e-mail e clique em Assinar.

  • Assine o feed RSS
  • Siga o Ubuntu-BR-SC no Twitter
  • Curta o Ubuntu-BR-SC no Facebook
  • Ubuntu-BR-SC no Google+
  • Canal do Ubuntu-BR-SC no YouTube


  • http://www.facebook.com/people/Isaias-Vasconcelos-Aguiar/100002555195694 Isaias Vasconcelos Aguiar

    Excelente tutorial, parabéns.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Fico feliz que tenha gostado @facebook-100002555195694:disqus :)

  • http://www.facebook.com/people/Isaias-Vasconcelos-Aguiar/100002555195694 Isaias Vasconcelos Aguiar

    Excelente tutorial, parabéns.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Fico feliz que tenha gostado @facebook-100002555195694:disqus :)

  • Isaias Vasconcelos Aguiar

    Excelente tutorial, parabéns.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Fico feliz que tenha gostado @facebook-100002555195694:disqus :)

  • http://twitter.com/Lucas_SM Lucas Silveira

    Parabéns pelo ótimo tutorial e pelo blog que está com conteúdo nota 10!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelos elogios @twitter-50124309:disqus :)

  • http://twitter.com/Lucas_SM Lucas Silveira

    Parabéns pelo ótimo tutorial e pelo blog que está com conteúdo nota 10!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelos elogios @twitter-50124309:disqus :)

  • http://twitter.com/Lucas_SM Lucas Silveira

    Parabéns pelo ótimo tutorial e pelo blog que está com conteúdo nota 10!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelos elogios @twitter-50124309:disqus :)

  • Levi Gomes

    Excelente tutorial, parabéns.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Que bom que gostou @google-6980e3fb6f539649d12b87dad93b23ed:disqus :)

  • Levi Gomes

    Excelente tutorial, parabéns.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Que bom que gostou @google-6980e3fb6f539649d12b87dad93b23ed:disqus :)

  • Levi Gomes

    Excelente tutorial, parabéns.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Que bom que gostou @google-6980e3fb6f539649d12b87dad93b23ed:disqus :)

  • alexkidd1612

    Muito bom o tutorial, na espera para os proximos…

    Qual o teste de stress q vc rodou pra gerar o relatorio?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @alexkidd1612:disqus usei o Blitz.io com 250 usuários conectados simultaneamente em um período de 1 minuto :)

      Mas também fiz alguns pequenos testes com Apache Bench com 1000 a 100000 (quase um DDoS lol) conexões, e o servidor nem se mexeu hehe

  • alexkidd1612

    Muito bom o tutorial, na espera para os proximos…

    Qual o teste de stress q vc rodou pra gerar o relatorio?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @alexkidd1612:disqus usei o Blitz.io com 250 usuários conectados simultaneamente em um período de 1 minuto :)

      Mas também fiz alguns pequenos testes com Apache Bench com 1000 a 100000 (quase um DDoS lol) conexões, e o servidor nem se mexeu hehe

  • alexkidd1612

    Muito bom o tutorial, na espera para os proximos…

    Qual o teste de stress q vc rodou pra gerar o relatorio?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @alexkidd1612:disqus usei o Blitz.io com 250 usuários conectados simultaneamente em um período de 1 minuto :)

      Mas também fiz alguns pequenos testes com Apache Bench com 1000 a 100000 (quase um DDoS lol) conexões, e o servidor nem se mexeu hehe

  • http://www.facebook.com/LFMOL Greyson Farias

    Simplesmente um tutorial fantástico! está muito de parabéns Julian, quando eu crescer quero ser igual você.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelo elogio @facebook-100000520165277:disqus :)
      E confie em mim, você não quer ser como eu. Eu sou falido :P

  • http://www.facebook.com/LFMOL Greyson Farias

    Simplesmente um tutorial fantástico! está muito de parabéns Julian, quando eu crescer quero ser igual você.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelo elogio @facebook-100000520165277:disqus :)
      E confie em mim, você não quer ser como eu. Eu sou falido :P

  • http://www.facebook.com/LFMOL Greyson Farias

    Simplesmente um tutorial fantástico! está muito de parabéns Julian, quando eu crescer quero ser igual você.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelo elogio @facebook-100000520165277:disqus :)
      E confie em mim, você não quer ser como eu. Eu sou falido :P

  • http://www.facebook.com/flavio.ti2011 Flavio Rogerio

    Júlian muito massa esse servidor tem como instalar nele mesmo o joomla também?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @facebook-1393685488:disqus Sim, apesar das minhas configurações serem mais voltadas ao WordPress por ser a plataforma que trabalho, elas funcionam tranquilamente com o Joomla, phpBB, Drupal ou qualquer outro script que você quiser.

      A única diferença será na hora de configurar o Varnish, pra isso você terá que procurar um exemplo de configuração específico para a sua plataforma.

  • http://www.facebook.com/flavio.ti2011 Flavio Rogerio

    Júlian muito massa esse servidor tem como instalar nele mesmo o joomla também?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @facebook-1393685488:disqus Sim, apesar das minhas configurações serem mais voltadas ao WordPress por ser a plataforma que trabalho, elas funcionam tranquilamente com o Joomla, phpBB, Drupal ou qualquer outro script que você quiser.

      A única diferença será na hora de configurar o Varnish, pra isso você terá que procurar um exemplo de configuração específico para a sua plataforma.

  • http://www.facebook.com/flavio.ti2011 Flavio Rogerio

    Júlian muito massa esse servidor tem como instalar nele mesmo o joomla também?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @facebook-1393685488:disqus Sim, apesar das minhas configurações serem mais voltadas ao WordPress por ser a plataforma que trabalho, elas funcionam tranquilamente com o Joomla, phpBB, Drupal ou qualquer outro script que você quiser.

      A única diferença será na hora de configurar o Varnish, pra isso você terá que procurar um exemplo de configuração específico para a sua plataforma.

  • http://twitter.com/mad_team Mad_Team

    Muito bom mesmo esse tutorial!
    Eu uso essa config no meu server, funciona perfeito e com 5% dos recursos que o apache usava, sim 5%!
    Parabens pelo site tambem, muito bom!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @twitter-238361959:disqus O que só prova o que falei indiretamente no post: Nginx deixa o Apache no chinelo na questão gerenciamento de recursos (:

      E performance também :P

      Estou considerando mudar o banco de dados do MySQL da Oracle para o MySQL da Percona, que dizem ser mais otimizado e ter melhor performance. Fazendo testes… caso realmente se prove melhor, farei um post sobre o assunto (:

  • http://twitter.com/mad_team Mad_Team

    Muito bom mesmo esse tutorial!
    Eu uso essa config no meu server, funciona perfeito e com 5% dos recursos que o apache usava, sim 5%!
    Parabens pelo site tambem, muito bom!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @twitter-238361959:disqus O que só prova o que falei indiretamente no post: Nginx deixa o Apache no chinelo na questão gerenciamento de recursos (:

      E performance também :P

      Estou considerando mudar o banco de dados do MySQL da Oracle para o MySQL da Percona, que dizem ser mais otimizado e ter melhor performance. Fazendo testes… caso realmente se prove melhor, farei um post sobre o assunto (:

  • http://twitter.com/mad_team Mad_Team

    Muito bom mesmo esse tutorial!
    Eu uso essa config no meu server, funciona perfeito e com 5% dos recursos que o apache usava, sim 5%!
    Parabens pelo site tambem, muito bom!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @twitter-238361959:disqus O que só prova o que falei indiretamente no post: Nginx deixa o Apache no chinelo na questão gerenciamento de recursos (:

      E performance também :P

      Estou considerando mudar o banco de dados do MySQL da Oracle para o MySQL da Percona, que dizem ser mais otimizado e ter melhor performance. Fazendo testes… caso realmente se prove melhor, farei um post sobre o assunto (:

  • Cristopher

    ótimo trabalho Julian.. Parabens ;), Vai me ajudar muito.. vou testar hoje a noite.. Até o momento eu tinha um servidor Debian rodando.. com o apache.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @a902f31abaf0e1ee3e1cee11e1112ca7:disqus,
      Recomendo fortemente que mude para o Ubuntu Server 12.04 e use o setup que mencionei no post (:

      Como falei para o @twitter-238361959:disqus, também estou considerando mudar o banco de dados do MySQL da Oracle para o MySQL da Percona, que dizem ser mais otimizado e ter melhor performance. Fazendo testes… caso realmente se prove melhor, farei um post sobre o assunto (:

      • Cassio Talle

        Mysql da Percona?
        Nunca ouvi falar, é um fork do Mysql?? Ou é um outro banco de dados homônimo?

        • http://www.ubuntubrsc.com/ Julian Fernandes

          @google-eec812d0867e90aa8f9695c8116f28b3:disqus, é um fork feito por esta empresa, chamada Percona. Tanto este fork quanto o MariaDB possuem performance superior ao MySQL da Oracle. Em outro projeto que estou dando setup, já estou usando o Percona e tenho que dizer: a performance é realmente maior. Vou atualizar este post em breve provavelmente (:

          • Cassio Talle

            Legal, vamos aguardar ansiosamente!!!

          • Cassio Talle

            Legal, vamos aguardar ansiosamente!!!

          • http://www.ubuntubrsc.com/ Julian Fernandes

            @google-eec812d0867e90aa8f9695c8116f28b3:disqus Vou atualiza-lo assim que terminar os testes no outro VPS. Como já tenho o MySQL da Oracle instalado e otimizado no VPS do Ubuntu-BR-SC (que vai ao ar junto com a nova versão do blog), não sei se vou substitui-lo pelo Percona… vamos ver se o tempo me deixa hehe

          • Cassio Talle

            desculpe o sistema travou e replicou a minha resposata! :)

  • Cristopher

    ótimo trabalho Julian.. Parabens ;), Vai me ajudar muito.. vou testar hoje a noite.. Até o momento eu tinha um servidor Debian rodando.. com o apache.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @a902f31abaf0e1ee3e1cee11e1112ca7:disqus,
      Recomendo fortemente que mude para o Ubuntu Server 12.04 e use o setup que mencionei no post (:

      Como falei para o @twitter-238361959:disqus, também estou considerando mudar o banco de dados do MySQL da Oracle para o MySQL da Percona, que dizem ser mais otimizado e ter melhor performance. Fazendo testes… caso realmente se prove melhor, farei um post sobre o assunto (:

      • Cassio Talle

        Mysql da Percona?
        Nunca ouvi falar, é um fork do Mysql?? Ou é um outro banco de dados homônimo?

        • http://www.ubuntubrsc.com/ Julian Fernandes

          @google-eec812d0867e90aa8f9695c8116f28b3:disqus, é um fork feito por esta empresa, chamada Percona. Tanto este fork quanto o MariaDB possuem performance superior ao MySQL da Oracle. Em outro projeto que estou dando setup, já estou usando o Percona e tenho que dizer: a performance é realmente maior. Vou atualizar este post em breve provavelmente (:

          • Cassio Talle

            Legal, vamos aguardar ansiosamente!!!

          • http://www.ubuntubrsc.com/ Julian Fernandes

            @google-eec812d0867e90aa8f9695c8116f28b3:disqus Vou atualiza-lo assim que terminar os testes no outro VPS. Como já tenho o MySQL da Oracle instalado e otimizado no VPS do Ubuntu-BR-SC (que vai ao ar junto com a nova versão do blog), não sei se vou substitui-lo pelo Percona… vamos ver se o tempo me deixa hehe

          • Cassio Talle

            Legal, vamos aguardar ansiosamente!!!

          • Cassio Talle

            desculpe o sistema travou e replicou a minha resposata! :)

  • Cristopher

    ótimo trabalho Julian.. Parabens ;), Vai me ajudar muito.. vou testar hoje a noite.. Até o momento eu tinha um servidor Debian rodando.. com o apache.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @a902f31abaf0e1ee3e1cee11e1112ca7:disqus,
      Recomendo fortemente que mude para o Ubuntu Server 12.04 e use o setup que mencionei no post (:

      Como falei para o @twitter-238361959:disqus, também estou considerando mudar o banco de dados do MySQL da Oracle para o MySQL da Percona, que dizem ser mais otimizado e ter melhor performance. Fazendo testes… caso realmente se prove melhor, farei um post sobre o assunto (:

      • Cassio Talle

        Mysql da Percona?
        Nunca ouvi falar, é um fork do Mysql?? Ou é um outro banco de dados homônimo?

        • http://www.ubuntubrsc.com/ Julian Fernandes

          @google-eec812d0867e90aa8f9695c8116f28b3:disqus, é um fork feito por esta empresa, chamada Percona. Tanto este fork quanto o MariaDB possuem performance superior ao MySQL da Oracle. Em outro projeto que estou dando setup, já estou usando o Percona e tenho que dizer: a performance é realmente maior. Vou atualizar este post em breve provavelmente (:

          • Cassio Talle

            Legal, vamos aguardar ansiosamente!!!

          • http://www.ubuntubrsc.com/ Julian Fernandes

            @google-eec812d0867e90aa8f9695c8116f28b3:disqus Vou atualiza-lo assim que terminar os testes no outro VPS. Como já tenho o MySQL da Oracle instalado e otimizado no VPS do Ubuntu-BR-SC (que vai ao ar junto com a nova versão do blog), não sei se vou substitui-lo pelo Percona… vamos ver se o tempo me deixa hehe

          • Cassio Talle

            desculpe o sistema travou e replicou a minha resposata! :)

  • Cassio Talle

    Mega coincidência!! Estava começando a fazer exatamente isso com uma VPS que acabei de comprar, o detalhe é que estava usando o apache. Mas diante desta explanação estou pensando o reconsiderar usar nginx. A minha dúvida é se o nginx daria suporte tanto para o php quanto para Ruby (Rails) em um mesmo servidor? Para que eu pudece hospedar tanto aplicações em PHP quanto Rails na mesma VPS.

    Abraço Execelente post!!!!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Recomendo fortemente substituir o Apache pelo Nginx @google-eec812d0867e90aa8f9695c8116f28b3:disqus, o consumo de recursos e a performance será muito melhor com o Nginx.

      Quanto a sua dúvida, sim, o Nginx da suporte até onde sei :)

  • Cassio Talle

    Mega coincidência!! Estava começando a fazer exatamente isso com uma VPS que acabei de comprar, o detalhe é que estava usando o apache. Mas diante desta explanação estou pensando o reconsiderar usar nginx. A minha dúvida é se o nginx daria suporte tanto para o php quanto para Ruby (Rails) em um mesmo servidor? Para que eu pudece hospedar tanto aplicações em PHP quanto Rails na mesma VPS.

    Abraço Execelente post!!!!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Recomendo fortemente substituir o Apache pelo Nginx @google-eec812d0867e90aa8f9695c8116f28b3:disqus, o consumo de recursos e a performance será muito melhor com o Nginx.

      Quanto a sua dúvida, sim, o Nginx da suporte até onde sei :)

  • Cassio Talle

    Mega coincidência!! Estava começando a fazer exatamente isso com uma VPS que acabei de comprar, o detalhe é que estava usando o apache. Mas diante desta explanação estou pensando o reconsiderar usar nginx. A minha dúvida é se o nginx daria suporte tanto para o php quanto para Ruby (Rails) em um mesmo servidor? Para que eu pudece hospedar tanto aplicações em PHP quanto Rails na mesma VPS.

    Abraço Execelente post!!!!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Recomendo fortemente substituir o Apache pelo Nginx @google-eec812d0867e90aa8f9695c8116f28b3:disqus, o consumo de recursos e a performance será muito melhor com o Nginx.

      Quanto a sua dúvida, sim, o Nginx da suporte até onde sei :)

  • Rudy

    Muito bom tutorial.
    Espero que você consigo logo postar a parte que fala sobre segurança.

    Parabéns!!!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @a6dc18baeba808bfa33a18bef78e15f1:disqus Creio que farei isso semana que vem (:

  • Rudy

    Muito bom tutorial.
    Espero que você consigo logo postar a parte que fala sobre segurança.

    Parabéns!!!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @a6dc18baeba808bfa33a18bef78e15f1:disqus Creio que farei isso semana que vem (:

  • Rudy

    Muito bom tutorial.
    Espero que você consigo logo postar a parte que fala sobre segurança.

    Parabéns!!!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @a6dc18baeba808bfa33a18bef78e15f1:disqus Creio que farei isso semana que vem (:

  • Rudy

    Tenho apache instalado no ubuntu 11.10, gostaria de testar o nginx, preciso desinstalar o apache ou posso instalar o nginx assim mesmo?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @a6dc18baeba808bfa33a18bef78e15f1:disqus Não precisa desinstalar o Apache Rudy (:

  • Rudy

    Tenho apache instalado no ubuntu 11.10, gostaria de testar o nginx, preciso desinstalar o apache ou posso instalar o nginx assim mesmo?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @a6dc18baeba808bfa33a18bef78e15f1:disqus Não precisa desinstalar o Apache Rudy (:

  • Rudy

    Tenho apache instalado no ubuntu 11.10, gostaria de testar o nginx, preciso desinstalar o apache ou posso instalar o nginx assim mesmo?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @a6dc18baeba808bfa33a18bef78e15f1:disqus Não precisa desinstalar o Apache Rudy (:

  • Cristopher

    Quando vou executar o comando ,

    apt-get install php5-fpm php-suhosin php-apc php5-gd php5-imagemagick php5-curl ,
    diz que impossivel encontrar pacote ;(

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Cristopher,
      Qual o pacote que não existe? E você está usando o Ubuntu Server 12.04?

      • Cassio Talle

        Eu tive esse problema com os pacotes php-suhosin e php5-imagemagick, consegui resolver o primeiro com o php5-suhosin mas o outro não consegui.

        Eu testei no ubuntu 12.04 server e desktop.

        • http://www.ubuntubrsc.com/ Julian Fernandes

          Olá @a902f31abaf0e1ee3e1cee11e1112ca7:disqus e @google-eec812d0867e90aa8f9695c8116f28b3:disqus,
          O erro está na minha digitação mesmo, desculpem. Já corrigi no tutorial.

          O nome correto dos pacotes é: php5-suhosin e php5-imagick :)

  • Cristopher

    Quando vou executar o comando ,

    apt-get install php5-fpm php-suhosin php-apc php5-gd php5-imagemagick php5-curl ,
    diz que impossivel encontrar pacote ;(

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Cristopher,
      Qual o pacote que não existe? E você está usando o Ubuntu Server 12.04?

      • Cassio Talle

        Eu tive esse problema com os pacotes php-suhosin e php5-imagemagick, consegui resolver o primeiro com o php5-suhosin mas o outro não consegui.

        Eu testei no ubuntu 12.04 server e desktop.

        • http://www.ubuntubrsc.com/ Julian Fernandes

          Olá @a902f31abaf0e1ee3e1cee11e1112ca7:disqus e @google-eec812d0867e90aa8f9695c8116f28b3:disqus,
          O erro está na minha digitação mesmo, desculpem. Já corrigi no tutorial.

          O nome correto dos pacotes é: php5-suhosin e php5-imagick :)

  • Cristopher

    Quando vou executar o comando ,

    apt-get install php5-fpm php-suhosin php-apc php5-gd php5-imagemagick php5-curl ,
    diz que impossivel encontrar pacote ;(

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Cristopher,
      Qual o pacote que não existe? E você está usando o Ubuntu Server 12.04?

      • Cassio Talle

        Eu tive esse problema com os pacotes php-suhosin e php5-imagemagick, consegui resolver o primeiro com o php5-suhosin mas o outro não consegui.

        Eu testei no ubuntu 12.04 server e desktop.

        • http://www.ubuntubrsc.com/ Julian Fernandes

          Olá @a902f31abaf0e1ee3e1cee11e1112ca7:disqus e @google-eec812d0867e90aa8f9695c8116f28b3:disqus,
          O erro está na minha digitação mesmo, desculpem. Já corrigi no tutorial.

          O nome correto dos pacotes é: php5-suhosin e php5-imagick :)

  • Wagner

    Muito Bom o Tutorial, ensina num próximo o pessoal a instalar e configurar o virtualmin, para gerenciar os servidores nginx, de email, de ftp etc!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Wagner,
      Não irei ensinar a usar o Virtualmim ou outro painel pois os considero um gasto desnecessário de recursos, já que tudo pode ser feito via terminal mesmo.

      Para email e FTP vale o mesmo. Pra email usaremos o Google App, e FTP é desnecessário quando porque temos SSH.

      • http://twitter.com/TsouzaR Tiago de Souza

        Penso igual a você nesses aspectos ^^

  • Wagner

    Muito Bom o Tutorial, ensina num próximo o pessoal a instalar e configurar o virtualmin, para gerenciar os servidores nginx, de email, de ftp etc!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Wagner,
      Não irei ensinar a usar o Virtualmim ou outro painel pois os considero um gasto desnecessário de recursos, já que tudo pode ser feito via terminal mesmo.

      Para email e FTP vale o mesmo. Pra email usaremos o Google App, e FTP é desnecessário quando porque temos SSH.

      • http://twitter.com/TsouzaR Tiago de Souza

        Penso igual a você nesses aspectos ^^

  • Wagner

    Muito Bom o Tutorial, ensina num próximo o pessoal a instalar e configurar o virtualmin, para gerenciar os servidores nginx, de email, de ftp etc!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Wagner,
      Não irei ensinar a usar o Virtualmim ou outro painel pois os considero um gasto desnecessário de recursos, já que tudo pode ser feito via terminal mesmo.

      Para email e FTP vale o mesmo. Pra email usaremos o Google App, e FTP é desnecessário quando porque temos SSH.

      • http://twitter.com/TsouzaR Tiago de Souza

        Penso igual a você nesses aspectos ^^

  • Thiago

    Demais! parbéns pelo excelente trabalho

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelo elogio @5f33e9e4d1e08183bf9f38e1c9b4f503:disqus :)

  • Thiago

    Demais! parbéns pelo excelente trabalho

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelo elogio @5f33e9e4d1e08183bf9f38e1c9b4f503:disqus :)

  • Thiago

    Demais! parbéns pelo excelente trabalho

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelo elogio @5f33e9e4d1e08183bf9f38e1c9b4f503:disqus :)

  • http://da2k.com.br/ Fernando Daciuk

    Cara, na boa.. parabéns! Excelente tutorial! Bom pra quem está começando e pra quem já conhece configurações pra server, mas está acostumado com o Apache.. é sempre bom conhecer coisas novas, ainda mais quando são melhores em performance :D

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelo elogio @fdaciuk:disqus :)
      A alguns anos atrás, quando conheci o LiteSpeed (servidor web 6x mais rápido que o Apache, mas pago), me senti assim. Quando conheci o Nginx a euforia foi ainda maior haha

  • http://da2k.com.br/ Fernando Daciuk

    Cara, na boa.. parabéns! Excelente tutorial! Bom pra quem está começando e pra quem já conhece configurações pra server, mas está acostumado com o Apache.. é sempre bom conhecer coisas novas, ainda mais quando são melhores em performance :D

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelo elogio @fdaciuk:disqus :)
      A alguns anos atrás, quando conheci o LiteSpeed (servidor web 6x mais rápido que o Apache, mas pago), me senti assim. Quando conheci o Nginx a euforia foi ainda maior haha

  • http://da2k.com.br/ Fernando Daciuk

    Cara, na boa.. parabéns! Excelente tutorial! Bom pra quem está começando e pra quem já conhece configurações pra server, mas está acostumado com o Apache.. é sempre bom conhecer coisas novas, ainda mais quando são melhores em performance :D

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Obrigado pelo elogio @fdaciuk:disqus :)
      A alguns anos atrás, quando conheci o LiteSpeed (servidor web 6x mais rápido que o Apache, mas pago), me senti assim. Quando conheci o Nginx a euforia foi ainda maior haha

  • http://www.facebook.com/UalasAndrade Ualas Andrade

    Julian vc recomenda a empresa speedysparrow, como vc já trabalha com ela gostaria de saber se por não ser uma empresa nacional eu não possa ter problemas por exemplo de suporte, ainda mas com a questão do idioma.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100002222049143:disqus,
      Se você entende inglês, o suporte será tranquilo. Se não entende nada de inglês fica mais complicado. Mas no momento em que você começa a criar um website, você terá que dar seu máximo por ele, caso contrário o investimento será em vão… então aprender inglês é o mínimo necessário hehe.

  • http://www.facebook.com/UalasAndrade Ualas Andrade

    Julian vc recomenda a empresa speedysparrow, como vc já trabalha com ela gostaria de saber se por não ser uma empresa nacional eu não possa ter problemas por exemplo de suporte, ainda mas com a questão do idioma.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100002222049143:disqus,
      Se você entende inglês, o suporte será tranquilo. Se não entende nada de inglês fica mais complicado. Mas no momento em que você começa a criar um website, você terá que dar seu máximo por ele, caso contrário o investimento será em vão… então aprender inglês é o mínimo necessário hehe.

  • http://www.facebook.com/UalasAndrade Ualas Andrade

    Julian vc recomenda a empresa speedysparrow, como vc já trabalha com ela gostaria de saber se por não ser uma empresa nacional eu não possa ter problemas por exemplo de suporte, ainda mas com a questão do idioma.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100002222049143:disqus,
      Se você entende inglês, o suporte será tranquilo. Se não entende nada de inglês fica mais complicado. Mas no momento em que você começa a criar um website, você terá que dar seu máximo por ele, caso contrário o investimento será em vão… então aprender inglês é o mínimo necessário hehe.

  • http://www.facebook.com/eduardohernacki Eduardo Hernacki

    @julian_fern:disqus você conhece/trabalhou com o
    50webs.com ?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100003765578957:disqus,
      Se for usar uma empresa internacional, use a Speedysparrow, como comentado. Os recursos e o website da empresa que você acabou de passar passam um amadorismo sem noção, e pelos “recursos ilimitados”, a empresa provavelmente pratica o oversell (milhares de contas em um só servidor).

      • bradock

        desculpe, mas nao encontrei o setor de comentar, esta parte e unida assim mesmo

        fastcgi_param SCRIPT_FILENAME

        >>>>>>$document_root$fastcgi_script_name;<<<<<<<

        ou seria;

        fastcgi_param SCRIPT_FILENAME

        $document_root $fastcgi_script_name;

        mais uma coisinha, gostaria de saber o pq q o link do ubuntubrsc.com esta embutido no script?

        if ((req.http.host ~ "(ubuntubrsc.com)")) {
        set req.backend = default;
        }

        algo como capturar info ?

        • http://www.ubuntubrsc.com/ Julian Fernandes

          Olá @5a588f9558a4e3bd2dd10af790f130f6:disqus,
          Ela é unida mesmo.

          Quanto ao link do Ubuntu-BR-SC nas configurações do Varnish, apenas esqueci de trocar o “ubuntubrsc.com” por “seusite.com”. Esse post passará por uma revisão em breve, então farei as devidas modificações :)

  • http://www.facebook.com/eduardohernacki Eduardo Hernacki

    @julian_fern:disqus você conhece/trabalhou com o
    50webs.com ?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100003765578957:disqus,
      Se for usar uma empresa internacional, use a Speedysparrow, como comentado. Os recursos e o website da empresa que você acabou de passar passam um amadorismo sem noção, e pelos “recursos ilimitados”, a empresa provavelmente pratica o oversell (milhares de contas em um só servidor).

  • http://www.facebook.com/eduardohernacki Eduardo Hernacki

    @julian_fern:disqus você conhece/trabalhou com o
    50webs.com ?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100003765578957:disqus,
      Se for usar uma empresa internacional, use a Speedysparrow, como comentado. Os recursos e o website da empresa que você acabou de passar passam um amadorismo sem noção, e pelos “recursos ilimitados”, a empresa provavelmente pratica o oversell (milhares de contas em um só servidor).

  • Paulo Henrique

    Estou com dificuldades ao criar virtual hosts

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Qual a dificuldade que está tendo @7e589e36111c88788b194b1e2b5fbb82:disqus?

      • http://www.facebook.com/henriquesacramento Paulo Henrique Sacramento

        nginx: [emerg] unknown directive “isten” in /etc/nginx/sites-enabled/teste.save:2

        • http://www.ubuntubrsc.com/ Julian Fernandes

          Olá @facebook-100000669301154:disqus,
          Primeiramente mude “seusite” para o link do seu site. De resto, creio que o problema é que você deve ter escrito algo errado… o erro por exemplo, fala algo sobre “isten”, quando correto é “listen” :)

      • http://www.facebook.com/henriquesacramento Paulo Henrique Sacramento

        server {
        listen 8080;
        server_name http://www.seusite.com seusite.com;
        root /var/www/;

        index index.php index.html index.htm;

        error_log /var/log/nginx/logsdosite.com-error_log;

        location / {
        try_files $uri $uri/ /index.php;
        }
        location = /favicon.ico {
        log_not_found off;
        access_log off;
        }

        location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
        }

        location ~ /. {
        deny all;
        access_log off;
        log_not_found off;
        }

        location ~* ^/wp-content/uploads/.*.php$ {
        deny all;
        access_log off;
        log_not_found off;
        }
        location ~ .php$ {
        try_files $uri =404;

        include /etc/nginx/fastcgi_params;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        if (-f $request_filename) {
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        }
        }
        }

        esse é meu arquivo para o novo host

  • Paulo Henrique

    Estou com dificuldades ao criar virtual hosts

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Qual a dificuldade que está tendo @7e589e36111c88788b194b1e2b5fbb82:disqus?

      • http://www.facebook.com/henriquesacramento Paulo Henrique Sacramento

        nginx: [emerg] unknown directive “isten” in /etc/nginx/sites-enabled/teste.save:2

        • http://www.ubuntubrsc.com/ Julian Fernandes

          Olá @facebook-100000669301154:disqus,
          Primeiramente mude “seusite” para o link do seu site. De resto, creio que o problema é que você deve ter escrito algo errado… o erro por exemplo, fala algo sobre “isten”, quando correto é “listen” :)

      • http://www.facebook.com/henriquesacramento Paulo Henrique Sacramento

        server {
        listen 8080;
        server_name http://www.seusite.com seusite.com;
        root /var/www/;

        index index.php index.html index.htm;

        error_log /var/log/nginx/logsdosite.com-error_log;

        location / {
        try_files $uri $uri/ /index.php;
        }
        location = /favicon.ico {
        log_not_found off;
        access_log off;
        }

        location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
        }

        location ~ /. {
        deny all;
        access_log off;
        log_not_found off;
        }

        location ~* ^/wp-content/uploads/.*.php$ {
        deny all;
        access_log off;
        log_not_found off;
        }
        location ~ .php$ {
        try_files $uri =404;

        include /etc/nginx/fastcgi_params;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        if (-f $request_filename) {
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        }
        }
        }

        esse é meu arquivo para o novo host

  • Paulo Henrique

    Estou com dificuldades ao criar virtual hosts

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Qual a dificuldade que está tendo @7e589e36111c88788b194b1e2b5fbb82:disqus?

      • http://www.facebook.com/henriquesacramento Paulo Henrique Sacramento

        nginx: [emerg] unknown directive “isten” in /etc/nginx/sites-enabled/teste.save:2

        • http://www.ubuntubrsc.com/ Julian Fernandes

          Olá @facebook-100000669301154:disqus,
          Primeiramente mude “seusite” para o link do seu site. De resto, creio que o problema é que você deve ter escrito algo errado… o erro por exemplo, fala algo sobre “isten”, quando correto é “listen” :)

      • http://www.facebook.com/henriquesacramento Paulo Henrique Sacramento

        server {
        listen 8080;
        server_name http://www.seusite.com seusite.com;
        root /var/www/;

        index index.php index.html index.htm;

        error_log /var/log/nginx/logsdosite.com-error_log;

        location / {
        try_files $uri $uri/ /index.php;
        }
        location = /favicon.ico {
        log_not_found off;
        access_log off;
        }

        location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
        }

        location ~ /. {
        deny all;
        access_log off;
        log_not_found off;
        }

        location ~* ^/wp-content/uploads/.*.php$ {
        deny all;
        access_log off;
        log_not_found off;
        }
        location ~ .php$ {
        try_files $uri =404;

        include /etc/nginx/fastcgi_params;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        if (-f $request_filename) {
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        }
        }
        }

        esse é meu arquivo para o novo host

  • http://www.facebook.com/henriquesacramento Paulo Henrique Sacramento

    agora meu problema é quanto ao ftp.
    instalei o vsftpd funciona perfeito porém tenho erro de permissão de arquivos.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100000669301154:disqus,
      Como não uso FTP, apenas SSH, não saberei te ajudar com essa, desculpe.

  • http://www.facebook.com/henriquesacramento Paulo Henrique Sacramento

    agora meu problema é quanto ao ftp.
    instalei o vsftpd funciona perfeito porém tenho erro de permissão de arquivos.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100000669301154:disqus,
      Como não uso FTP, apenas SSH, não saberei te ajudar com essa, desculpe.

  • http://www.facebook.com/henriquesacramento Paulo Henrique Sacramento

    agora meu problema é quanto ao ftp.
    instalei o vsftpd funciona perfeito porém tenho erro de permissão de arquivos.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100000669301154:disqus,
      Como não uso FTP, apenas SSH, não saberei te ajudar com essa, desculpe.

  • http://www.facebook.com/cezar.lamann Cezar Lamann

    Oi @julian_fern:disqus ! excelente tutorial!

    bem, tudo estava indo OK, quando fui startar o nginx que não subiu e me deu esse problema:

    [emerg] invalid number of arguments in “try_files” directive in /etc/nginx/sites-enabled/default:83

    procurei na wiki do nginx, e vi que os argumentos que eles colocam lá são bem parecidos com os seus. Porém, testando com o deles e com o desse turorial, o nginx não sobe…

    ah, teria alguma indicação de modificação nas confs varnish/nginx pra rodar o oscommerce?

    abraço!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100000596135659:disqus,
      Poderia me mostrar o arquivo default do Nginx por favor? Ele está localizado em /etc/nginx/sites-enabled/default :)

      Quanto as indicações, nada que me venha na cabeça no momento.

  • http://www.facebook.com/cezar.lamann Cezar Lamann

    Oi @julian_fern:disqus ! excelente tutorial!

    bem, tudo estava indo OK, quando fui startar o nginx que não subiu e me deu esse problema:

    [emerg] invalid number of arguments in “try_files” directive in /etc/nginx/sites-enabled/default:83

    procurei na wiki do nginx, e vi que os argumentos que eles colocam lá são bem parecidos com os seus. Porém, testando com o deles e com o desse turorial, o nginx não sobe…

    ah, teria alguma indicação de modificação nas confs varnish/nginx pra rodar o oscommerce?

    abraço!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-100000596135659:disqus,
      Poderia me mostrar o arquivo default do Nginx por favor? Ele está localizado em /etc/nginx/sites-enabled/default :)

      Quanto as indicações, nada que me venha na cabeça no momento.

  • http://www.focuson.com.br/ Ramoel Rodrigues

    Parabéns @julian_fern:disqus !! Ótimo tutorial!!

    Eu também faço trabalhos com wordpress e ainda não consegui encontrar uma IDE bacana para trabalhar com ele. Você indica alguma? Você faz webdesign também ou apenas programação? Se fizer, o que tem usado para substituir a suite Adobe?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @disqus_ogC2a0wTFL:disqus,
      Não uso nenhuma IDE específica, faço as edições diretamente via terminal usando o nano ou via interface gráfica usando o Gedit… ambos me satisfazem imensamente hehe

      Quanto a edição gráfica, uso uma combinação de Photoshop CS2 rodando via Wine (pois ganhei a licença de um amigo) e GIMP 2.8. Mas acabo usando o GIMP bem mais no final das contas.

  • http://www.focuson.com.br/ Ramoel Rodrigues

    Parabéns @julian_fern:disqus !! Ótimo tutorial!!

    Eu também faço trabalhos com wordpress e ainda não consegui encontrar uma IDE bacana para trabalhar com ele. Você indica alguma? Você faz webdesign também ou apenas programação? Se fizer, o que tem usado para substituir a suite Adobe?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @disqus_ogC2a0wTFL:disqus,
      Não uso nenhuma IDE específica, faço as edições diretamente via terminal usando o nano ou via interface gráfica usando o Gedit… ambos me satisfazem imensamente hehe

      Quanto a edição gráfica, uso uma combinação de Photoshop CS2 rodando via Wine (pois ganhei a licença de um amigo) e GIMP 2.8. Mas acabo usando o GIMP bem mais no final das contas.

  • Isaias Junior

    Olá tudo bom @julian_fern:disqus cara eu tenho uma instancia micro na AWS e estou seguindo seu tuto. mais de deparei com um problema.

    root@ip-10-252-9-184:~# /etc/init.d/varnish start
    * Starting HTTP accelerator varnishd [fail]

    pode me ajudar?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @google-9497cb6614d069926ed9a7753d2f1dc0:disqus,
      Isso ocorre porque você ainda não configurou o Varnish. Como falei no tutorial de instalação, a parte de configuração dele fica em suas mãos hehe… irei ensinar a configura-lo corretamente na próxima parte do tutorial, que é focada em configurações e otimização.

      • Isaias Junior

        ok vou dar continuidade no tuto e ver se da tudo certo no final.

  • Isaias Junior

    Olá tudo bom @julian_fern:disqus cara eu tenho uma instancia micro na AWS e estou seguindo seu tuto. mais de deparei com um problema.

    root@ip-10-252-9-184:~# /etc/init.d/varnish start
    * Starting HTTP accelerator varnishd [fail]

    pode me ajudar?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @google-9497cb6614d069926ed9a7753d2f1dc0:disqus,
      Isso ocorre porque você ainda não configurou o Varnish. Como falei no tutorial de instalação, a parte de configuração dele fica em suas mãos hehe… irei ensinar a configura-lo corretamente na próxima parte do tutorial, que é focada em configurações e otimização.

      • Isaias Junior

        ok vou dar continuidade no tuto e ver se da tudo certo no final.

  • Guilherme_William

    Amigo, no comado sudo /etc/init.d/php-fpm start sudo /etc/init.d/nginx start sudo /etc/init.d/mysql start sudo /etc/init.d/varnish start

    o meu terminal está falando o seguinte:
    sudo: /etc/init.d/php-fpm: command not found

    o que pode ser? fiz tudo como vc manda acima…

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Guilherme_William:disqus,
      Desculpe pela confusão, a nova versão do blog tirou a quebra de linha do “pre”, por isso o comando ficou meio errado.

      O correto é um por vez, dessa forma:
      sudo /etc/init.d/php-fpm start
      sudo /etc/init.d/nginx start
      sudo /etc/init.d/mysql start
      sudo /etc/init.d/varnish start

      • Guilherme_William

        Ok, mesmo corrigindo isso, quando mando ativar o php ele dis o seguinte:

        root@williamneves:~# sudo /etc/init.d/php-fpm start sudo: /etc/init.d/php-fpm: command not found

        root@williamneves:~# sudo /etc/init.d/varnish start * Starting HTTP accelerator varnishd [fail]

        Os demais serviços foi ok!

        Será que nao contém erros no tutorial? fiz tudo exatamente igual, inclusive estou usaando o mesmo servidor…

        • http://www.ubuntubrsc.com/ Julian Fernandes

          @Guilherme_William:disqus Tenta sudo /etc/init.d/php5-fpm start. Talvez eu tenha cometido um erro de digitação.

          Quanto ao Varnish, o serviço não está iniciando provavelmente por causa da falta de quebras de linha no seu arquivo de configuração (pelo erro do nosso CSS aqui). Corrigindo o CSS por aqui :)

          • Guilherme_William

            Eu coloquei 5 no final e ele nao deu erro mas tambem nao avisou nada:
            root@williamneves:~# sudo /etc/init.d/php5-fpm startroot@williamneves:~#

            em relacao a substituicao de seusite.com eu posso colocar qualquer url? e se for mais de um site?

          • http://www.ubuntubrsc.com/ Julian Fernandes

            Olá @Guilherme_William:disqus, o comando correto seria: sudo /etc/init.d/php5-fpm start

            Reveja suas configurações (dando uma olhada no tutorial novamente) e tente novamente :)

            Quanto a sua última dúvida, sim, você pode colocar qualquer URL. Se for mais de um site, também… apesar de, pessoalmente, preferir criar um vHost novo para cada site.

          • Guilherme_William

            outra coisa, quando corrigir o css avisa blz?

          • http://www.ubuntubrsc.com/ Julian Fernandes

            @Guilherme_William:disqus CSS corrigido :)

            Quanto ao php5, aquele ponto que coloquei no final do meu comentário não deve ser usado.

  • http://appleaddicted.com.br/ William Neves

    Amigo, no comado sudo /etc/init.d/php-fpm start sudo /etc/init.d/nginx start sudo /etc/init.d/mysql start sudo /etc/init.d/varnish start

    o meu terminal está falando o seguinte:
    sudo: /etc/init.d/php-fpm: command not found

    o que pode ser? fiz tudo como vc manda acima…

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Guilherme_William:disqus,
      Desculpe pela confusão, a nova versão do blog tirou a quebra de linha do “pre”, por isso o comando ficou meio errado.

      O correto é um por vez, dessa forma:
      sudo /etc/init.d/php-fpm start
      sudo /etc/init.d/nginx start
      sudo /etc/init.d/mysql start
      sudo /etc/init.d/varnish start

      • http://appleaddicted.com.br/ William Neves

        Ok, mesmo corrigindo isso, quando mando ativar o php ele dis o seguinte:

        root@williamneves:~# sudo /etc/init.d/php-fpm start sudo: /etc/init.d/php-fpm: command not found

        root@williamneves:~# sudo /etc/init.d/varnish start * Starting HTTP accelerator varnishd [fail]

        Os demais serviços foi ok!

        Será que nao contém erros no tutorial? fiz tudo exatamente igual, inclusive estou usaando o mesmo servidor…

        • http://www.ubuntubrsc.com/ Julian Fernandes

          @Guilherme_William:disqus Tenta sudo /etc/init.d/php5-fpm start. Talvez eu tenha cometido um erro de digitação.

          Quanto ao Varnish, o serviço não está iniciando provavelmente por causa da falta de quebras de linha no seu arquivo de configuração (pelo erro do nosso CSS aqui). Corrigindo o CSS por aqui :)

          • http://appleaddicted.com.br/ William Neves

            Eu coloquei 5 no final e ele nao deu erro mas tambem nao avisou nada:
            root@williamneves:~# sudo /etc/init.d/php5-fpm startroot@williamneves:~#

            em relacao a substituicao de seusite.com eu posso colocar qualquer url? e se for mais de um site?

          • http://www.ubuntubrsc.com/ Julian Fernandes

            Olá @Guilherme_William:disqus, o comando correto seria: sudo /etc/init.d/php5-fpm start

            Reveja suas configurações (dando uma olhada no tutorial novamente) e tente novamente :)

            Quanto a sua última dúvida, sim, você pode colocar qualquer URL. Se for mais de um site, também… apesar de, pessoalmente, preferir criar um vHost novo para cada site.

          • http://appleaddicted.com.br/ William Neves

            outra coisa, quando corrigir o css avisa blz?

          • http://www.ubuntubrsc.com/ Julian Fernandes

            @Guilherme_William:disqus CSS corrigido :)

            Quanto ao php5, aquele ponto que coloquei no final do meu comentário não deve ser usado.

  • Guilherme_William

    nesse comando:
    {nano /etc/nginx/sites-available/default
    Eu apago todo o arquivo e deixo como esta o do sistema?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Guilherme_William:disqus,
      Sim, você apaga o que estiver no arquivo e substitui pelo o que está no post.

  • http://appleaddicted.com.br/ William Neves

    nesse comando:
    {nano /etc/nginx/sites-available/default
    Eu apago todo o arquivo e deixo como esta o do sistema?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Guilherme_William:disqus,
      Sim, você apaga o que estiver no arquivo e substitui pelo o que está no post.

  • Guilherme_William

    Amigo nesse comando esta com erro:

    root@williamneves:~# sudo /etc/init.d/varnish start *
    Starting HTTP accelerator varnishd [fail]

    Estou com uma duvida aqui também:

    nano /etc/nginx/sites-available/default

    Eu tenho que adicionar isso ou substituir ou apagar alguma coisa lá?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Guilherme_William:disqus,
      O Varnish só irá rodar corretamente quando você configurar o Nginx corretamente.

      Quanto a sua última dúvida, como respondi abaixo, você apaga o que estiver no arquivo e substitui pelo o que está no post.

  • http://appleaddicted.com.br/ William Neves

    Amigo nesse comando esta com erro:

    root@williamneves:~# sudo /etc/init.d/varnish start *
    Starting HTTP accelerator varnishd [fail]

    Estou com uma duvida aqui também:

    nano /etc/nginx/sites-available/default

    Eu tenho que adicionar isso ou substituir ou apagar alguma coisa lá?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Guilherme_William:disqus,
      O Varnish só irá rodar corretamente quando você configurar o Nginx corretamente.

      Quanto a sua última dúvida, como respondi abaixo, você apaga o que estiver no arquivo e substitui pelo o que está no post.

  • Guilherme_William

    Outro erro aqui:

    nano /etc/mysql/my.cnf

    Esse arquivo que abre está em branco.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Guilherme_William:disqus,
      Se você instalou o MySQL corretamente como mostrado no post, o arquivo my.cnf deve estar com as configurações padrões. Dê uma conferida na sua instalação.

  • http://appleaddicted.com.br/ William Neves

    Outro erro aqui:

    nano /etc/mysql/my.cnf

    Esse arquivo que abre está em branco.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @Guilherme_William:disqus,
      Se você instalou o MySQL corretamente como mostrado no post, o arquivo my.cnf deve estar com as configurações padrões. Dê uma conferida na sua instalação.

  • http://www.facebook.com/ricmmartins Ricardo Martins

    Pessoal,
    O que vocês fizeram para resolver a falha ao inicializar o Varnish?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-1568932083:disqus,
      O Varnish só irá iniciar corretamente quando você configurar o Nginx para usar a porta 8080, como mostrado na parte “WordPress” do tutorial.

      • http://www.facebook.com/ricmmartins Ricardo Martins

        Estranho…. já está assim.

        • http://www.ubuntubrsc.com/ Julian Fernandes

          Olá @facebook-1568932083:disqus,
          Tente reiniciar o Nginx por favor. Ao invés do comando “start”, use “restart”. Após isso, tente iniciar o Varnish novamente.

          • http://www.facebook.com/ricmmartins Ricardo Martins

            Eu fiz isso, agora subiu. Porém quando aponto o browser para o ip da máquina, a página não abre, como se o nginx não estivesse rodando.

          • http://www.ubuntubrsc.com/ Julian Fernandes

            @facebook-1568932083:disqus Tente reiniciar o PHP-FPM também e dê uma olhada nos logs de erro para ver se aparece algo por lá. Os logs ficam em /var/logs/ :)

          • http://www.facebook.com/ricmmartins Ricardo Martins

            Outro detalhe é que dei um telnet ip 8080 e respondeu normalmente…

  • http://www.facebook.com/ricmmartins Ricardo Martins

    Pessoal,
    O que vocês fizeram para resolver a falha ao inicializar o Varnish?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @facebook-1568932083:disqus,
      O Varnish só irá iniciar corretamente quando você configurar o Nginx para usar a porta 8080, como mostrado na parte “WordPress” do tutorial.

      • http://www.facebook.com/ricmmartins Ricardo Martins

        Estranho…. já está assim.

        • http://www.ubuntubrsc.com/ Julian Fernandes

          Olá @facebook-1568932083:disqus,
          Tente reiniciar o Nginx por favor. Ao invés do comando “start”, use “restart”. Após isso, tente iniciar o Varnish novamente.

          • http://www.facebook.com/ricmmartins Ricardo Martins

            Eu fiz isso, agora subiu. Porém quando aponto o browser para o ip da máquina, a página não abre, como se o nginx não estivesse rodando.

          • http://www.ubuntubrsc.com/ Julian Fernandes

            @facebook-1568932083:disqus Tente reiniciar o PHP-FPM também e dê uma olhada nos logs de erro para ver se aparece algo por lá. Os logs ficam em /var/logs/ :)

          • http://www.facebook.com/ricmmartins Ricardo Martins

            Outro detalhe é que dei um telnet ip 8080 e respondeu normalmente…

  • Thiago Nalli Valentim

    Eu não conhecia o nginx, vou testar ele em minha VirtualBox, apesar de não trabalhar com servidores, gosto muito de Redes e claro, conhecimento nunca é demais, muito bom seu Tutorial e bem didadico, ficou faltando a continuação..rsrs

  • http://thiagonalli.net/ Thiago Nalli Valentim

    Eu não conhecia o nginx, vou testar ele em minha VirtualBox, apesar de não trabalhar com servidores, gosto muito de Redes e claro, conhecimento nunca é demais, muito bom seu Tutorial e bem didadico, ficou faltando a continuação..rsrs

  • Ricardo Roma

    Olá Julian,
    Ótimo post, teria alguma dica para um blog grande para deixar o primeiro acesso mais rápido? antes de entrar no varnish?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @google-69f30e20642b7c71739a9615d6410ef6:disqus,
      O que você pode fazer é “prime cache”. Ou seja, acessar todos os posts e página do seu blog, para que o Varnish os carregue na memória.

      O blog Ubuntu-BR-SC por exemplo, tem uma média de 3~4 mil visitas diárias, e nossa velocidade continua sempre a mesma. Na verdade não uso mais Varnish aqui, mas o princípio é o mesmo.

      Um script que uso no Ubuntu (desktop), mas creio que funciona para Windows/Mac também, é o Optimus Cache Prime: http://patrickmylund.com/projects/ocp/

  • Ricardo Roma

    Olá Julian,
    Ótimo post, teria alguma dica para um blog grande para deixar o primeiro acesso mais rápido? antes de entrar no varnish?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      Olá @google-69f30e20642b7c71739a9615d6410ef6:disqus,
      O que você pode fazer é “prime cache”. Ou seja, acessar todos os posts e página do seu blog, para que o Varnish os carregue na memória.

      O blog Ubuntu-BR-SC por exemplo, tem uma média de 3~4 mil visitas diárias, e nossa velocidade continua sempre a mesma. Na verdade não uso mais Varnish aqui, mas o princípio é o mesmo.

      Um script que uso no Ubuntu (desktop), mas creio que funciona para Windows/Mac também, é o Optimus Cache Prime: http://patrickmylund.com/projects/ocp/

  • Reyk Alencar

    Seguinte, percebi que quando eu estava configurando o nginx, você já está configurando isso diretamente para o site, naquela parte onde pede para eu colocar eu colocar o “meusite.com”, não é possível eu fazer a emulação desse processo com uma máquina virtual ou outro jeito não? ;~
    Queria fazer o teste todo na minha rede ou no meu computador mesmo…

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @3f1d10113aadd6e4d1869b09394da3c6:disqus Mesmo que você coloque algum endereço ali, você ainda poderá fazer os testes com o IP da sua máquina.

      • Reyk Alencar

        Só continuando, tenho limitações quanto ao cartão de crédito nacional, pode conferir se esse servidor é bom? http://www.argohost.net/
        é que ele só informa que o TRÁFEGO é ilimitado…Estou pensando em contratar o plano Promocional, que da 500MB de espaço, e já vi sites excelentes que usam ele como hospedagem, como o: algoritmizando.com

        poderia esclarecer minha dúvida? ;D

        • http://www.ubuntubrsc.com/ Julian Fernandes

          @3f1d10113aadd6e4d1869b09394da3c6:disqus Únicos serviços que utilizo e recomendo são os da Speedysparrow, da Linode e da Media Temple.

          A Argohost utiliza data centers no Brasil, o que é bom, mas sofre do mesmo problema que a maioria das hospedagens brasileiros: preços absurdos. Com a exceção disso, ainda temos o fato de dizerem que oferecem tráfego ilimitado, o que já desanima pakas.

  • http://www.ubuntubrsc.com/ Julian Fernandes

    Olá @5a588f9558a4e3bd2dd10af790f130f6:disqus,
    Ela é unida mesmo.

    Quanto ao link do Ubuntu-BR-SC nas configurações do Varnish, apenas esqueci de trocar o “ubuntubrsc.com” por “seusite.com”. Esse post passará por uma revisão em breve, então farei as devidas modificações :)

  • http://www.ubuntubrsc.com/ Julian Fernandes

    @3f1d10113aadd6e4d1869b09394da3c6:disqus Mesmo que você coloque algum endereço ali, você ainda poderá fazer os testes com o IP da sua máquina.

  • http://www.ubuntubrsc.com/ Julian Fernandes

    @3f1d10113aadd6e4d1869b09394da3c6:disqus Únicos serviços que utilizo e recomendo são os da Speedysparrow, da Linode e da Media Temple.

    A Argohost utiliza data centers no Brasil, o que é bom, mas sofre do mesmo problema que a maioria das hospedagens brasileiros: preços absurdos. Com a exceção disso, ainda temos o fato de dizerem que oferecem tráfego ilimitado, o que já desanima pakas.

  • http://twitter.com/Dodilei Dodilei

    Olá Julian,
    Excelente post, me ajudou muito! Eu sou desenvolvedor python e javascript, e a muito tempo não estava mexendo com infraestrutura, uma área que tenho mto interesse e antigamente era meu trampo…. eu gosto muito de sysadmin, e hoje uso a amazon e outros recursos de virtualização para servidores Linux, mas pelo meu trabalho não tenho tanto tempo assim para me dedicar como gostaria… por isso que estou agradecendo, você economizou muitas horas preciosas em pesquisa e estudo para alcançar uma otimização nesse nível…

    Hoje eu implementei as suas dicas em sites wordpress e também em 2 aplicações minhas em Python que eu uso o framework Web2py… gostei muito do Varnish, mas ainda sou muito noob… consegui fazer ele rodar direitinho com o Web2py e o Nginx, mas eu não conheço suficiente para fazer otimizações para ele no Varnish… eu estou usando o interpretador UWSGI para o python e configurei um “backend” para ele no Varnish e funcionou numa boa… mas você tem algumas dicas ou pensa em fazer algum tutorial só de Varnish? achei ele muito útil, mas achei escassa as informações de configurações para ele…

    Ahh estou aguardando a segunda parte do tutorial… muito bom! estou recomendando a todos que conheço!

    Abração!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @twitter-127320834:disqus Não creio que eu vá fazer um post somente sobre o Varnish, mas na palestra que darei na Latinoware desse ano, falarei sobre ele. Se quiser pode aparecer por lá :)

  • http://twitter.com/Dodilei Dodilei

    Olá Julian,
    Excelente post, me ajudou muito! Eu sou desenvolvedor python e javascript, e a muito tempo não estava mexendo com infraestrutura, uma área que tenho mto interesse e antigamente era meu trampo…. eu gosto muito de sysadmin, e hoje uso a amazon e outros recursos de virtualização para servidores Linux, mas pelo meu trabalho não tenho tanto tempo assim para me dedicar como gostaria… por isso que estou agradecendo, você economizou muitas horas preciosas em pesquisa e estudo para alcançar uma otimização nesse nível…

    Hoje eu implementei as suas dicas em sites wordpress e também em 2 aplicações minhas em Python que eu uso o framework Web2py… gostei muito do Varnish, mas ainda sou muito noob… consegui fazer ele rodar direitinho com o Web2py e o Nginx, mas eu não conheço suficiente para fazer otimizações para ele no Varnish… eu estou usando o interpretador UWSGI para o python e configurei um “backend” para ele no Varnish e funcionou numa boa… mas você tem algumas dicas ou pensa em fazer algum tutorial só de Varnish? achei ele muito útil, mas achei escassa as informações de configurações para ele…

    Ahh estou aguardando a segunda parte do tutorial… muito bom! estou recomendando a todos que conheço!

    Abração!

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @twitter-127320834:disqus Não creio que eu vá fazer um post somente sobre o Varnish, mas na palestra que darei na Latinoware desse ano, falarei sobre ele. Se quiser pode aparecer por lá :)

  • http://www.facebook.com/juniorpdias Junior Dias

    fiz a instalação exatamente como vc descreveu , e mesmo assim não consigo encontrar o arquivo my.cnf

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @facebook-805279234:disqus O Percona não cria o my.cnf na pasta citada, um erro que cometi quando mudei algumas coisas no tutorial. Você pode copiar um my.cnf genérico na internet e adicionar as informações que passei, sem problema algum.

  • http://www.facebook.com/juniorpdias Junior Dias

    fiz a instalação exatamente como vc descreveu , e mesmo assim não consigo encontrar o arquivo my.cnf

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @facebook-805279234:disqus O Percona não cria o my.cnf na pasta citada, um erro que cometi quando mudei algumas coisas no tutorial. Você pode copiar um my.cnf genérico na internet e adicionar as informações que passei, sem problema algum.

  • Geraldo

    Ao acessar o nginx o seguinte erro aparece
    500 Internal Server Error
    nginx/1.2.3

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @a3f68d9767746f055589d03a5e4e066d:disqus Reveja seus arquivos de configuração, pois você fez algo errado nos mesmos.

      • http://twitter.com/gametavenus Gameta Vênus

        Estou instalando no AWS Amazon, as configurações são as mesmas?

        • http://www.ubuntubrsc.com/ Julian Fernandes

          @twitter-611376721:disqus Se você estiver usando a Amazon, sugiro usar o Juju, instalador do Ubuntu 12.04.

          Mais informações: http://www.jorgecastro.org/2012/08/31/the-way-to-run-wordpress-in-the-cloud

          • http://twitter.com/gametavenus Gameta Vênus

            O meu foco é instalar o Nginx, PHP-FPM, APC, Varnish e o MySql para usar com o Magento 1.7.2.

    • http://www.facebook.com/carlospineli Jose Carlos Pineli

      Estou com o mesmo problema do erro 500. Mas só instalei ainda não mexi em nada, para ter feito alguma besteira rsrs. Alguém conseguiu resolver???

  • Geraldo

    Ao acessar o nginx o seguinte erro aparece
    500 Internal Server Error
    nginx/1.2.3

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @a3f68d9767746f055589d03a5e4e066d:disqus Reveja seus arquivos de configuração, pois você fez algo errado nos mesmos.

      • http://twitter.com/gametavenus Gameta Vênus

        Estou instalando no AWS Amazon, as configurações são as mesmas?

        • http://www.ubuntubrsc.com/ Julian Fernandes

          @twitter-611376721:disqus Se você estiver usando a Amazon, sugiro usar o Juju, instalador do Ubuntu 12.04.

          Mais informações: http://www.jorgecastro.org/2012/08/31/the-way-to-run-wordpress-in-the-cloud

          • http://twitter.com/gametavenus Gameta Vênus

            O meu foco é instalar o Nginx, PHP-FPM, APC, Varnish e o MySql para usar com o Magento 1.7.2.

    • http://www.facebook.com/carlospineli Jose Carlos Pineli

      Estou com o mesmo problema do erro 500. Mas só instalei ainda não mexi em nada, para ter feito alguma besteira rsrs. Alguém conseguiu resolver???

    • Anonimo

      Geraldo é simples cara, há remova as seguintes linhas aí do tutorial em default:

      server_name http://www.seusite.com seusite.com;
      E remova também:
      location ~ /. {
      deny all;
      access_log off;
      log_not_found off;
      }

      Remova essas 2 linhas na configuração em dafault, fazendo isto reinicie e ja era
      Velho, parabéns ! :-D

  • http://www.facebook.com/juniorpdias Junior Dias

    Olha es tá faltando muita coisa nesse artigo , no percona mysql existe um erro que não cria o arquivo my.cfn , e no php5-fpm tbm não gerou o arquivo o arquivo .sock , por acaso vc usou esse tutorial http://library.linode.com/lemp-guides/ubuntu-10.04-lucid ?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @facebook-805279234:disqus O arquivo .sock é gerado após você tentar rodar algum arquivo .php algumas vezes.

      E não, não usei nenhum tutorial para criar este.

  • http://www.facebook.com/juniorpdias Junior Dias

    Olha es tá faltando muita coisa nesse artigo , no percona mysql existe um erro que não cria o arquivo my.cfn , e no php5-fpm tbm não gerou o arquivo o arquivo .sock , por acaso vc usou esse tutorial http://library.linode.com/lemp-guides/ubuntu-10.04-lucid ?

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @facebook-805279234:disqus O arquivo .sock é gerado após você tentar rodar algum arquivo .php algumas vezes.

      E não, não usei nenhum tutorial para criar este.

  • http://www.facebook.com/juniorpdias Junior Dias

    E como faz para configurar vários virtuais hosts , multiplos sítes… depois de criado o vhost no sites-available , como seria a configuração no etc/varnish/default.vcl ?

  • http://www.facebook.com/juniorpdias Junior Dias

    E como faz para configurar vários virtuais hosts , multiplos sítes… depois de criado o vhost no sites-available , como seria a configuração no etc/varnish/default.vcl ?

  • Rafael

    Ótima explicação, a melhor parte foi falar dos tankers hahahaha. Parabéns :D

  • Rafael

    Ótima explicação, a melhor parte foi falar dos tankers hahahaha. Parabéns :D

  • Urik

    Julian, a sua atitude de criar esse tuto foi muito boa, porém precisa de uma revisão geral. Tentei implementar seguindo passo-a-passo suas dicas e tive muito problema.
    Então resolvi começar do zero, a partir da documentação oficial de cada software e agora tenho um ambiente funcional, e com configurações bem mais enxutas.
    De qualquer maneira, foi pelo post que resolvi tentar botar a mão na massa.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @f02a61e8d6d54804eb937e26eeb8d2e0:disqus Engraçado, pois refiz um servidor ontem a tarde seguindo os passos e funcionou sem maiores problemas hehe

      Mas tenho uma revisão do artigo em mente sim, até porque acabei esquecendo que o arquivo my.cnf não é criado pelo Percona no Ubuntu, um “bug” conhecido e que vai ficar assim pra sempre, de acordo com os desenvolvedores.

      • Marcello Caetano

        Quando vai postar? Se já fez, onde postou? obrigado

    • http://mrnet.in/ Michel Wilhelm

      Aqui funcionou perfeitamente também, em 3 servidores. Verifique todos os passos, alguma coisa foi esquecida.

    • Marcello Caetano

      Poderia postar para nós? Obrigado.

  • Urik

    Julian, a sua atitude de criar esse tuto foi muito boa, porém precisa de uma revisão geral. Tentei implementar seguindo passo-a-passo suas dicas e tive muito problema.
    Então resolvi começar do zero, a partir da documentação oficial de cada software e agora tenho um ambiente funcional, e com configurações bem mais enxutas.
    De qualquer maneira, foi pelo post que resolvi tentar botar a mão na massa.

    • http://www.ubuntubrsc.com/ Julian Fernandes

      @f02a61e8d6d54804eb937e26eeb8d2e0:disqus Engraçado, pois refiz um servidor ontem a tarde seguindo os passos e funcionou sem maiores problemas hehe

      Mas tenho uma revisão do artigo em mente sim, até porque acabei esquecendo que o arquivo my.cnf não é criado pelo Percona no Ubuntu, um “bug” conhecido e que vai ficar assim pra sempre, de acordo com os desenvolvedores.

      • Marcello Caetano

        Quando vai postar? Se já fez, onde postou? obrigado

    • http://mrnet.in/ Michel Wilhelm

      Aqui funcionou perfeitamente também, em 3 servidores. Verifique todos os passos, alguma coisa foi esquecida.

    • Marcello Caetano

      Poderia postar para nós? Obrigado.

    • Renato Frota

      Algumas coisas eu adaptei ao seguir o tuto… fui realizando as edições linha por linha. Certas linhas já estavam nos arquivos de configuração e não precisei incluir, por exemplo. Além disso, o ngnix da versão atual traz uma linha listen [::]:80 que, se não for comentada, causa erro no arranque (se o servidor não tiver IPv6), e por aí vai.. não é exatamente problema com o tutorial, na minha opinião. As instruções apenas não foram dadas tão “ao pé da letra” como “procure tal parâmetro e mude para X, ou, se não existir, adicione-o”.

  • http://www.bragil.net/ Rogério Bragil

    Olá Julian! Ótimo post, muito bem detalhado!

    Para mim foi tudo ok, exceto por um problema que aconteceu após iniciar o serviço do Varnish:

    fork: Cannot allocate memory

    Qualquer comando que eu tentasse executar no bash dava esse erro. Saí do ssh, tentei reconectar, mas não foi possível. Procurei pela net e todas as dicas mandavam executar alguma coisa na linha de comando, mas ao tentar executar dava o mesmo erro. Como o VPS era novo, pedi para resetar a instalação.

    Gostaria muito de poder resolver isso, pois o Varnish é excelente para otimizar o desempenho do servidor para atender requisições.

    Abraço!!

    Rogério Bragil

  • http://www.bragil.net/ Rogério Bragil

    Olá Julian! Ótimo post, muito bem detalhado!

    Para mim foi tudo ok, exceto por um problema que aconteceu após iniciar o serviço do Varnish:

    fork: Cannot allocate memory

    Qualquer comando que eu tentasse executar no bash dava esse erro. Saí do ssh, tentei reconectar, mas não foi possível. Procurei pela net e todas as dicas mandavam executar alguma coisa na linha de comando, mas ao tentar executar dava o mesmo erro. Como o VPS era novo, pedi para resetar a instalação.

    Gostaria muito de poder resolver isso, pois o Varnish é excelente para otimizar o desempenho do servidor para atender requisições.

    Abraço!!

    Rogério Bragil

  • http://mrnet.in/ Michel Wilhelm

    Excelente artigo! Agora, tem alguma coisa relacionada ao rewrite usando Nginx?

  • http://mrnet.in/ Michel Wilhelm

    Excelente artigo! Agora, tem alguma coisa relacionada ao rewrite usando Nginx?

    • Anonimo

      Opa michel tudo bom cara? Existe um site que ele converte seu htaccess para nginx, basta colar o código nele http://winginx.com/htaccess Valeu ! :-p

      • http://mrnet.in/ Michel Wilhelm

        Opa! Funcionou perfeitamente! Valeu “anonimo” :)

        • Anonimo

          de nada !

  • Anonimo

    Julian Fernandes gostaria de conversar com você, você deixou seu contato ali em cima julian@ubuntubrsc.com é MSN ou apenas email ? Obrigado !

  • Anonimo

    Julian Fernandes gostaria de conversar com você, você deixou seu contato ali em cima julian@ubuntubrsc.com é MSN ou apenas email ? Obrigado !

  • valdir

    alguem poderia me ajudar, gostaria de instalar codeigniter no meu
    servidor web, mais nao estou conseguindo executar links por
    site.com.br/home e site.com.br/noticia/mundo alguem podeia me ajudar,
    desta ja muito obrigado

    • Anonimo

      você precisa colocar rewrite no nginx se não ele não encontra as páginas tal.

  • Marcello Caetano

    Gostaria de instalar no Ubuntu Desktop 12.04 para uso local como posso fazer isso?

    • http://mrnet.in/ Michel Wilhelm

      Exatamente o que eu fiz aqui, ele virou meu server, rodou muito bem :)

      • Marcello Caetano

        Como posso configurar para outros CMS? Extamente como um VPS para vários sites. Obrigado desde já!

  • Marcello Caetano

    Gostaria de instalar no Ubuntu Desktop 12.04 para uso local como posso fazer isso?

    • http://mrnet.in/ Michel Wilhelm

      Exatamente o que eu fiz aqui, ele virou meu server, rodou muito bem :)

      • Marcello Caetano

        Como posso configurar para outros CMS? Extamente como um VPS para vários sites. Obrigado desde já!

  • http://mrnet.in/ Michel Wilhelm

    Opa! Funcionou perfeitamente! Valeu “anonimo” :)

    • Anonimo

      de nada !

  • Anonimo

    você precisa colocar rewrite no nginx se não ele não encontra as páginas tal.

  • Marcos Aurelio

    Meu amigo, tenho 4 sites que dão um total de 5K visitas unicas dia, gostaria de saber quanto você cobra para eu comprar o server indicado por você + CPanel e você fazer essas configurações e subir os backps dos meus sites para este server. Outra duvida, este server suportaria meu outro site que tem média de 20K visitas unicas por dia? Não precisa nem publicar este comentário, basta me responder por gentileza.

  • Marcos Aurelio

    Meu amigo, tenho 4 sites que dão um total de 5K visitas unicas dia, gostaria de saber quanto você cobra para eu comprar o server indicado por você + CPanel e você fazer essas configurações e subir os backps dos meus sites para este server. Outra duvida, este server suportaria meu outro site que tem média de 20K visitas unicas por dia? Não precisa nem publicar este comentário, basta me responder por gentileza.

  • Anonimo

    Alguem poderia me ajudar? gostaria de mudar aquele nome “Nginx” nas páginas de erro para uma custumizada por mim, alguem pode me responder? podem me passar 1 tutorial?

  • Anonimo

    Alguem poderia me ajudar? gostaria de mudar aquele nome “Nginx” nas páginas de erro para uma custumizada por mim, alguem pode me responder? podem me passar 1 tutorial?

  • Alex Aquino

    Olá Julian Fernandes, tudo bem?! Espero que sim, Julian gostaria de realizar as configurações para utilização local e só depois realizar Up para a hospedagem, quais seriam os procedimentos para utilizar o wordpress em localhost? Se falei besteira, desculpas, sou leigo nesse assunto, obrigado.

  • Alex Aquino

    Olá Julian Fernandes, tudo bem?! Espero que sim, Julian gostaria de realizar as configurações para utilização local e só depois realizar Up para a hospedagem, quais seriam os procedimentos para utilizar o wordpress em localhost? Se falei besteira, desculpas, sou leigo nesse assunto, obrigado.

  • Marcelo

    Olá! Agora quando tento acessar o site ao final da configuração, ele me direciona para o site: http://w.seusite.com/#ld
    Onde foi que eu errei? Alterei todos os lugares que estavam com o escrito “seusite”. Ou será que esqueci algum? Obrigado pela ajuda.

  • http://twitter.com/_carlosmarx Carlos Marx

    Duas observações:

    Na parte do Varnish:

    Onde está: nano /etc/varnish/default.vlc

    Deve ser: nano /etc/varnish/default.vcl

    As letras “c” e “l” estão trocadas.

    Na parte do Nginx:

    Onde está: location ~ /. { //Segue code

    No meu Ubuntu 12.04 só funcionou colocando uma barra invertida () para escapar o “.” ficando assim: location ~ /. { // Segue code

  • http://twitter.com/_carlosmarx Carlos Marx

    Duas observações:

    Na parte do Varnish:

    Onde está: nano /etc/varnish/default.vlc

    Deve ser: nano /etc/varnish/default.vcl

    As letras “c” e “l” estão trocadas.

    Na parte do Nginx:

    Onde está: location ~ /. { //Segue code

    No meu Ubuntu 12.04 só funcionou colocando uma barra invertida () para escapar o “.” ficando assim: location ~ /. { // Segue code

  • Marcos Nakamine

    Muito bom, parabéns!

  • Alexandro

    location ~ /. { … essa regrinha tá dando “403 Forbidden” error
    alterando para location ~ /. { resolve o problema

    execelente trabalho!!

  • Renato Frota

    Esse tutorial só está pecando na falta de alguns caracteres (backward slash, barra invertida).

    Exemplo: location ~ /. {
    Correto: location ~ /. {

    Esse pequeno detalhe causa um erro 403 (Forbidden). O mesmo para ~ .php (que deve ser ~ .php) e para as linhas de configuração do DAEMON_OPTS, que devem encerrar com uma barra, indicando a quebra de linha e continuidade dos parametros (com exceção da última linha).

    Com essas devidas correções, tudo funciona perfeitamente! Ótimo tutorial, muito obrigado.

    • Rodrigo Müller

      Perdi muito tempo procurando a resposta, muito obrigado. Não conseguia sair do erro 403, e só faltava um “”. Muito Obrigado.

    • http://claudiosmweb.com/ Claudio Sanches

      Valeu cara, salvou minha vida hoje com essas barras invertidas xD

      • http://www.ubuntubrsc.com/ Julian Fernandes

        @claudiosmweb:disqus Só lembrando que este tutorial está BASTANTE desatualizado.

        Hoje em dia seria muito melhor utilizar o NGINX com fastcgi_cache ao invés do Varnish, além de outras coisas.

        Não faço mais parte do time deste blog, por isso o tutorial está desatualizado.

        • http://claudiosmweb.com/ Claudio Sanches

          Relaxa cara, não usei o que você fez de Varnish aqui xD

          • http://www.ubuntubrsc.com/ Julian Fernandes

            :)

    • dsalvagni

      Dude! Tu me salvaste agora.

  • http://www.facebook.com/andrecosta.on André Luis

    Olá Julian, adquiri a pouco tempo uma VPS, e também, tenho uma hospedagem onde mantenho alguns websites de clientes, pergunta:
    com esse tutorial consigo hospedar websites diferentes.
    Você indica algum painel semelhante ao Cpanel?
    Parabéns pelo site, é muito organizado e bem explicado.

  • FrancisCPD

    Aguardando ansiosamente pelo tutorial de otimização e segurança.

  • Samuel Cavalcante

    ja saiu o tutorial de otimização e segurança ?

  • Luiz

    Amigão, parabéns pela publicação me ajudou bastante, deixei tudo funcionando e ok, porém do nada o wordpress começou a pedir usuário e senha de ftp para atualizar e remover plugin’s, o que pode ser? Tem alguma luz? Pois antes funcionava normalmente, revi e refiz as configurações mas continua solicitando usuario e senha para atualização dos plugins, se puder ajudar fico agradecido! Abração.

    • http://claudiosmweb.com/ Claudio Sanches

      Talvez colocando define(‘FS_METHOD’, ‘direct’); no seu wp-config.php resolva este problema.
      Isso dai indica que deve ser atualizado direto e sem FTP.

  • Victor Almeida

    php5-fpm (ppa) + php5-sasl:
    É possível fazer a instalação de ambos !?
    Se positivo, qual o procedimento !?

  • Cezar Cruz

    Poxa!! Muito bom cara!!! Valew!!!! =D

  • ATorresNH

    PERFEITO! Mas alguém tem um tutorial como este para o CentOS?

  • Murilo T Torres

    Parabéns pelo tutorial, esta muito bem feito, e foi bem confeccionado, foi feito com muito capricho, mais uma vez meus parabéns. Me ajudou muito!

  • Philippe

    como funciona em caso do apache ter virtual host, o varnish aceita?

  • André Xori

    Muito bom!!! Parabéns MESMO! Sou desenvolvedor e estou querendo aprender sobre essas configs para desempenho… e muitos tutoriais que vejo a galera passa os códigos e sugere usar o vi… porém, sem maiores explicações. O vi, pra quem não está acostumado, é um parto para fazer coisas básicas.
    Parabéns, novamente!

  • Filipe Barreto

    Parabéns pelo tutorial mais.. as imagens tao off !!! Teria como coloca-las ON novamente ?? Estou estudando essa estrutura e seu tutorial esta muito bom! parabéns obrigado !

  • Heleno Freire

    Gostei do post, quero fazer os testes, você poderia verificar as imagens que não estão sendo exibidas corretamente ?

    No aguardo

Assine!

Quer receber as novidades mais recentes do Ubuntu na sua caixa de entrada? Informe seu e-mail e clique em Assinar.

  • Assine o feed RSS
  • Siga o Ubuntu-BR-SC no Twitter
  • Curta o Ubuntu-BR-SC no Facebook
  • Ubuntu-BR-SC no Google+
  • Canal do Ubuntu-BR-SC no YouTube

Mais comentados da semana

Posts recomendados