O mod_rewrite é necessário para ser ativado no apache. Você pode tentar isso:
Eu tenho uma máquina virtual azul do Ubuntu 14.04 que atende alguns sites diferentes.
www.example.com está configurado para ip 1.2.3.4 (meu servidor) e é redirecionado para 1.2.3.4/example. Isso funciona bem.
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /usr/share/example
</VirtualHost>
A instalação real do joomla é colocada em / usr / share / example (na verdade é um link para / mounteddrive / example).
Quando eu ligo a regravação de URL no joomla para evitar que o index.php faça parte do URL, ele falha (a página 404 está chegando).
Eu fiz as seguintes alterações no .htaccess que eu tenho certeza de copiar do joomla 3.4.1 original antes de fazer as últimas mudanças.
(E lembrei-me de limpar os caches; -))
## Begin - Custom redirects
#
# If you need to redirect some pages, or set a canonical non-www to
# www redirect (or vice versa), place that code here. Ensure those
# redirects use the correct RewriteRule syntax and the [R=301,L] flags.
#
#
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*(index|home)\.html?\ HTTP/
RewriteRule ^(([^/]+/)*)(index|home)\.html?$ http://www.example.com/ [R=301,L]
#
RewriteCond %{THE_REQUEST} !^POST
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*index\.php\ HTTP/
RewriteCond %{SERVER_PORT}>s ^(443>(s)|[0-9]+>s)$
RewriteRule ^(([^/]+/)*)index\.php$ http%2://www.example.com/ [R=301,L]
#
RewriteCond %{HTTP_HOST} !^(www\.example\.com)?$
RewriteRule (.*) http://www.example.com/ [R=301,L]
## End - Custom redirects
Tenho a sensação de que também preciso fazer algo sobre RewriteBase /
neste caso, mas não sei ao certo.
Eu olhei para vários ressources sobre os problemas específicos do joomla, mas pareço correr em coisas que estão sendo configuradas um pouco diferentes do que na distribuição do ubuntu, é por isso que eu pergunto aqui.
O mod_rewrite é necessário para ser ativado no apache. Você pode tentar isso: