Magenta subpáginas dan 404

Acabo de restaurar nuestro website de Magento en un server diferente que ejecuta apache2 en ubuntu. La página principal funciona bien, pero si bash ir a cualquier otra página, obtengo un 404.

Permisos

  • Todos los files tienen 660
  • Todos los directorys son 770 Todos los files y directorys
  • Todos los files y directorys pertenecen al grupo www-data

Cosas que he intentado

  • revise todo el website y los ids de la tienda
  • agregue /index.php/ entre el dominio y el path de la página
  • borrar files temporales

Nada aparece en los files de logging distintos de las líneas 404 estándar en el file access.log y error.log.

file apache2 .conf

<VirtualHost *:80> ServerAdmin serveradmin@mydomain.com 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> 

Salida del file de logging

 ==> /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" 

Suena como un problema con reescritura. En Ubuntu:

Correr:

 a2enmod rewrite apt-get install php5-curl 

y entonces:

 service apache2 restart 

mod_rewrite y php-curl ahora estará habilitado!

Php requiere diferentes permissions. Magento recomienda lo siguiente:

 find . -type d -exec chmod 775 "{}" \; find . -type f -exec chmod 664 "{}" \;