Aller au contenu

Sujets conseillés

Posté

Bonsoir à tous,

Je teste en local, sous windows, un site perso en simulant un nom de domaine et un sous-domaine.

Dans le fichier 'C:\Windows\System32\drivers\etc\hosts', j'ai rajouté la ligne :

127.0.0.1	   www.tamplan.fr api.tamplan.fr

Dans le fichier 'F:\xampp64\apache\conf\httpd.conf', j'ai les lignes suivantes :

ServerName localhost:80
NameVirtualHost *:80

<VirtualHost *:80>
ServerAdmin admin_AT_localhost
DocumentRoot "F:/xampp64/htdocs/"
<Directory "F:/xampp64/htdocs">
# ici viennent les options spécifiques à ce dossier
</Directory>
</VirtualHost>

L'adresse 'h**p://www.tamplan.fr' est reconnue en local.

L'adresse 'h**p://api.tamplan.fr' n'est pas reconnue en local.

Jusque là, tout est normal.

Dans le fichier 'F:/xampp64/htdocs/.htaccess', j'ai les lignes :

RewriteEngine On
RewriteCond %{HTTP_HOST} ^api.tamplan.fr
RewriteRule api/(.*) - [L]
RewriteRule ^(.*)$ /api/index.php [QSA,L]
Options -Indexes

Par ce biais, l'adresse 'h**p://api.tamplan.fr' est reconnue et c'est bien le fichier 'F:/xampp64/htdocs/api/index.php' qui est exécuté.

Maintenant, ça se corse si j'ai le fichier 'F:/xampp64/htdocs/.htaccess' suivant :

RewriteEngine On

RewriteRule ^studios/([0-9]+)$ studios/showentry.php?showentry=$1 [L]
RewriteRule ^studios/delete/([0-9]+)$ studios/deleteentry.php?showentry=$1 [L]
RewriteRule ^studios/edit/([0-9]+)$ studios/editentry.php?showentry=$1 [L]
RewriteRule ^studios/add/$ studios/addentry.php [L]

RewriteCond %{HTTP_HOST} ^api.tamplan.fr
RewriteRule api/(.*) - [L]
RewriteRule ^(.*)$ /api/index.php [QSA,L]
Options -Indexes

J'obtiens une erreur 500, les scripts dans le dossier 'F:/xampp64/htdocs/studios' ainsi que le script 'F:/xampp64/htdocs/index.php' ne sont pas exécutés.

Que me faudrait il modifier sachant que je compte utiliser un hébergement mutualisé par la suite qui ne devrait pas me donner accès à la configuration d'apache ?

Merci pour votre aide !! :rolleyes:

Posté

Bonsoir à tous,

A priori, je pense avoir solutionné mon problème.

Dans le fichier 'F:/xampp64/htdocs/.htaccess', j'ai les lignes :

RewriteEngine On

RewriteRule ^studios/([0-9]+)$ studios/showentry.php?showentry=$1 [L]
RewriteRule ^studios/delete/([0-9]+)$ studios/deleteentry.php?showentry=$1 [L]
RewriteRule ^studios/edit/([0-9]+)$ studios/editentry.php?showentry=$1 [L]
RewriteRule ^studios/add/$ studios/addentry.php [L]

RewriteCond %{HTTP_HOST} api.tamplan.fr [NC]
RewriteRule ^(.*)$ /api/index.php [QSA,L]

Options -Indexes

J'ai dû rajouter un fichier 'F:/xampp64/htdocs/api/.htaccess' qui contient :

RewriteEngine Off

Je suppose que par ce biais et seulement dans le seul dossier 'F:/xampp64/htdocs/api', les règles définies dans le fichier '.htaccess' ne sont plus appliquées.

J'espère avoir trouvé la solution et surtout compris le concept...

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...