Se vogliamo installare magento in un sottodirettorio (e.g. /magento/) invece che nella root del nostro web server allora per far sì che il tutto funzioni occorre:
1. Avere un hosting Linux (per installare Magento ovviamente)
2. Cambiare dal pannello di configurazione dell’host il tipo di php.ini file in cgi.fix_pathinfo che attiva la modalità cgi.fix_pathinfo = 1
3. Attivare l’url rewrite nel vostro .htaccess
# Setting rewrite rules.
<IfModule mod_rewrite.c>
#Options +FollowSymLinks
RewriteEngine on
################################################## MAGENTO ##########################################
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteRule ^.+.php$ /bogusfile
############################################
## you can put here your magento root folder
## path relative to web root
## QUESTO PUNTO E’ FONDAMENTALE SE AVETE INSTALLATO
## MAGENTO NEL DIRETTORIO /magento/
RewriteBase /magento/
############################################
## uncomment next line to enable light API calls processing
# RewriteRule ^api/([a-z][0-9a-z_]+)/?$ api.php?type=$1 [QSA,L]
############################################
## rewrite API2 calls to api.php (by now it is REST only)
RewriteRule ^api/rest api.php?type=rest [QSA,L]
############################################
## workaround for HTTP authorization
## in CGI environment
<IfModule mod_rewrite.c>
#Options +FollowSymLinks
RewriteEngine on
################################################## MAGENTO ##########################################
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteRule ^.+.php$ /bogusfile
############################################
## you can put here your magento root folder
## path relative to web root
## QUESTO PUNTO E’ FONDAMENTALE SE AVETE INSTALLATO
## MAGENTO NEL DIRETTORIO /magento/
RewriteBase /magento/
############################################
## uncomment next line to enable light API calls processing
# RewriteRule ^api/([a-z][0-9a-z_]+)/?$ api.php?type=$1 [QSA,L]
############################################
## rewrite API2 calls to api.php (by now it is REST only)
RewriteRule ^api/rest api.php?type=rest [QSA,L]
############################################
## workaround for HTTP authorization
## in CGI environment
RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
############################################
## TRACE and TRACK HTTP methods disabled to prevent XSS attacks
RewriteCond %{REQUEST_METHOD} ^TRAC[EK]
RewriteRule .* – [L,R=405]
############################################
## always send 404 on missing files in these folders
RewriteCond %{REQUEST_URI} !^/(media|skin|js)/
############################################
## never rewrite for existing files, directories and links
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
############################################
## rewrite everything else of magenta to its index.php
RewriteCond %{REQUEST_URI} ^/staging/magento/1.9.1.0/.*
RewriteRule .* index.php [L]</IfModule>
############################################
## TRACE and TRACK HTTP methods disabled to prevent XSS attacks
RewriteCond %{REQUEST_METHOD} ^TRAC[EK]
RewriteRule .* – [L,R=405]
############################################
## always send 404 on missing files in these folders
RewriteCond %{REQUEST_URI} !^/(media|skin|js)/
############################################
## never rewrite for existing files, directories and links
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
############################################
## rewrite everything else of magenta to its index.php
RewriteCond %{REQUEST_URI} ^/staging/magento/1.9.1.0/.*
RewriteRule .* index.php [L]</IfModule>