IMHO esta pergunta não é específica do Ubuntu e deve ser migrada para a falha do servidor .
Paolo
2
O OP instalou a lâmpada no UBUNTU. Quanto mais específico do Ubuntu você deseja?
Wojox
1
@ wojov: Eu não sei sobre esse caso, mas esse argumento não funciona. "Como posso usar este aplicativo (no Ubuntu)?" são principalmente fora de tópico.
23
Este não é um "Como posso usar o aplicativo", mas um "como habilitar um recurso específico no Ubuntu". O Apache no Ubuntu usa um layout de configuração diferente, no qual cada módulo e host virtual está em um arquivo /etc/apache2e pode ser ativado usando a2*programas.
Lekensteyn
Você deve descrever o que você fez para diminuir o problema.
ericn
Respostas:
239
Para habilitar o módulo de reescrita, execute "apache2 enable module rewrite":
sudo a2enmod rewrite
Você precisa reiniciar o servidor da web para aplicar as alterações:
sudo service apache2 restart
Se você planeja usar mod_rewrite em .htaccessarquivos, também precisa habilitar o uso de .htaccessarquivos alterando AllowOverride Nonepara AllowOverride FileInfo. Para o site padrão, edite /etc/apache2/sites-available/default:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
# changed from None to FileInfo
AllowOverride FileInfo
Order allow,deny
allow from all
</Directory>
Após essa alteração, você precisará reiniciar o Apache novamente.
<Directory "/var/www/html">
AllowOverride All
</Directory>
Por alguma razão, no Ubuntu 14.04 e apache2, a raiz está definida como /www/html. Se você deseja alterar a raiz do servidor da web para antiga /www, open 000-default.confe alterar
DocumentRoot /var/www/html/
para
DocumentRoot /var/www/
e depois, claro, deve ser
<Directory "/var/www">
AllowOverride All
</Directory>
Obrigado pela informação! Desta maneira / nova, podemos usar www como pasta onde colocamos todos os sites, e o html é por padrão "site" para localhost. Pode ser importante se você estiver jogando com a abertura de portas para o mundo - para que seu host local não veja pastas de outros projetos.
Vladimir Vukanac
1
Não está funcionando para mim. Estou usando # Ubuntu 14.04.4 LTS
/etc/apache2
e pode ser ativado usandoa2*
programas.Respostas:
Para habilitar o módulo de reescrita, execute "apache2 enable module rewrite":
Você precisa reiniciar o servidor da web para aplicar as alterações:
Se você planeja usar mod_rewrite em
.htaccess
arquivos, também precisa habilitar o uso de.htaccess
arquivos alterandoAllowOverride None
paraAllowOverride FileInfo
. Para o site padrão, edite/etc/apache2/sites-available/default
:Após essa alteração, você precisará reiniciar o Apache novamente.
a2enmod
fonte
sudo a2enmod rewrite
eFileInfo
consertou para mim!Atrevo-me a adicionar uma resposta especial (como acompanhamento da ótima resposta acima) sobre o ubuntu 14.04 e
.htaccess
:Na 14.04, o nome do arquivo de configuração padrão é alterado para
000-default.conf
:adicione o seguinte ao final do arquivo:
Por alguma razão, no Ubuntu 14.04 e apache2, a raiz está definida como
/www/html
. Se você deseja alterar a raiz do servidor da web para antiga/www
,open 000-default.conf
e alterarpara
e depois, claro, deve ser
fonte
Ubuntu 14.04.4 LTS