Parece um problema com as reescritas. No Ubuntu:
Executar:
a2enmod rewrite
apt-get install php5-curl
e depois:
service apache2 restart
mod_rewrite
e php-curl
agora serão ativados!
Acabei de restaurar nosso site do Magento em um servidor diferente executando o apache2 no Ubuntu. A home page fica bem, mas se eu tentar ir para qualquer outra página, eu recebo um 404.
Permissões
Coisas que tentei
Nada aparece nos arquivos de log além das linhas padrão 404 no access.log e no error.log.
arquivo apache2 .conf
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName mydomain.com
DocumentRoot "/var/www/default/"
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory "/var/www/default/">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
php_admin_flag engine on
php_admin_value open_basedir none
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
.htaccess
DirectoryIndex index.php
<IfModule mod_php5.c>
php_value memory_limit 10G
php_value max_execution_time 1800000
php_flag magic_quotes_gpc off
php_flag session.auto_start off
php_flag suhosin.session.cryptua off
php_flag zend.ze1_compatibility_mode Off
</IfModule>
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
<IfModule mod_deflate.c>
</IfModule>
<IfModule mod_ssl.c>
SSLOptions StdEnvVars
</IfModule>
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/(media|skin|js)/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.php [L]
</IfModule>
AddDefaultCharset Off
<IfModule mod_expires.c>
ExpiresDefault "access plus 1 year"
</IfModule>
Order allow,deny
Allow from all
<Files RELEASE_NOTES.txt>
order allow,deny
deny from all
</Files>
Saída do arquivo de log
==> /var/log/apache2/oem1-error.log <==
[Tue Oct 15 12:32:21 2013] [error] [client 192.168.0.4] File does not exist: /var/www/gearhead_oem1/admin
==> /var/log/apache2/oem1-access.log <==
192.168.0.4 - - [15/Oct/2013:12:32:21 -0600] "GET /admin HTTP/1.1" 404 507 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.69 Safari/537.36"
Php requer permissões diferentes. Magento recomenda o seguinte:
find . -type d -exec chmod 775 "{}" \;
find . -type f -exec chmod 664 "{}" \;