Μετάβαση στο περιεχόμενο

Κάνε το Drupal να λειτουργεί από υποφάκελο

Αν έχετε εγκαταστήσει το Drupal μέσα σε υποφάκελο του domain σας (πχ domain.gr/httpdocs/drupal/) αλλά δε θέλετε να ανοίγει από εκεί (http://www.mysite.gr/drupal/) αλλά να φαίνεται ότι λειτουργεί από τον κεντρικό φάκελο του (http://www.mysite.gr/), τότε η λύση είναι αυτή:

Στον κεντρικό (root/γονικό) φάκελο του domain σας, φτιάξτε ένα αρχείο με όνομα .htaccess που να περιέχει τον παρακάτω κώδικα:
Options -Indexes RewriteEngine on Options +FollowSymLinks RewriteCond %{HTTP_HOST} !^www.mysite.gr$ [NC] RewriteRule .* http://www.mysite.gr/ [L,R=301] RewriteRule ^$ drupal/index.php [L] RewriteCond %{DOCUMENT_ROOT}/drupal%{REQUEST_URI} -f RewriteRule .* drupal/$0 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* drupal/index.php?q=$0 [QSA]

Έπειτα, στο drupal/.htaccess, απενεργοποιήστε τις εντολές mod_rewrite αλλάζοντας το "<IfModule mod_rewrite.c>" σε: [ht_message mstyle="info" title="" show_icon="" id="" class="" style="" ][/ht_message]

Τέλος στο /drupal/sites/default/settings.php, αφαιρέστε το σχόλιο (τον χαρακτήρα #) από τη γραμμή: $base_url = 'http://www.mysite.gr'; 

ΣΗΜΕΙΩΣΗ: Αντί για mysite.gr εσείς θα γράψετε το ΔΙΚΟ ΣΑΣ domain, πχ dnhost.gr