Domanda

apprezzerei davvero se potessi aiutarmi a costruire il mio file .htaccess.
Quello che voglio raggiungere qui sta spostando tutti i file e le cartelle del mio dominio su una sottocartella radice ("MyDomain") e assicurati che l'URL visibile ai miei visitatori sia ancora

domain.com/file.extention  
.

invece di

domain.com/mydomain/file.extention 
.

o

domain.com/subfolder/file.extention
.

invece di

domain.com/mydomain/subfolder/file.extention
.

Questo è il mio albero delle cartelle:

/
  /mydomain
    /subfolder
    index.php
    test.php
.

Ed ecco il mio attuale file .htaccess:

<IfModule mod_rewrite.c>

# System symbolic links are allowed.
Options +FollowSymlinks

# Runtime rewriting engine enabled.
RewriteEngine On

#
# BEGIN DOMAIN
#

# Make 'mydomain' subfolder the root folder for the domain.
RewriteCond %{HTTP_HOST} ^((www\.)?domain\.com) [NC]
RewriteRule ^\/?$ mydomain/ [NC,L,S=1]

RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/?mydomain/ [NC]
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)$ mydomain/$1 [NC,L]

#
# END DOMAIN
#

</IfModule>
.

Il problema qui è che funziona quando navigo per

domain.com/subfolder/
.

ma non con

domain.com/subfolder
.

e con

domain.com/index.php
.

ma non con

domain.com/test.php
.

Grazie a tutti,
Matteo

È stato utile?

Soluzione

Modifica domain.com/mydomain/file.extenzione a dominio.com/file.Extimento

Usa questo ad esempio

RewriteRule ^mydomain/(.+)$ http://www.domain.com/ [R=301,L]
.

Ma se reindirizza il lavoro solo per alcune pagine, controllare che tu debba chiarire la cache del browser o usa un altro invece

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top