2010-03-16 1 views
1

J'ai actuellement css et javascript appels de fichiers (entre autres) comme les suivantes:comment puis-je utiliser htaccess pour faire des requêtes http fonctionnent correctement

href = "/ css/default.css" src = "/ js/ui_control.js "

en mettant le/in précédent pour faire les fichiers relatifs à la racine.

Cela fonctionne très bien lorsque ma page est à la racine du domaine. Cependant, je suis actuellement en train de transférer mon site à un nouveau fournisseur d'hébergement et en tant que tel a une URL temporaire qui est: HOST-IP/~ nom d'utilisateur

En tant que tel, tous les appels de fichiers essaient d'être appelés de HOST-IP/css/default.css etc au lieu de dans le sous-dossier ~ username.

Bien sûr, je peux attendre que les serveurs de noms de domaine se propagent, mais c'est à côté de ça. Comment puis-je écrire une règle dans le fichier .htaccess qui redirigerait tous les appels de fichiers commençant par un /, d'aller à HOST-IP/FILE-CALL, et d'aller à HOST-IP/~ USERNAME/FILE-CALL. ?

Des idées?

Répondre

0

Je suggérerais de changer les références dans votre HTML aux fichiers pour être relatif, car cela fonctionnera dans un sous-dossier ou en tant que racine du domaine.

+0

Cette option n'est pas disponible sur la plupart des sites qui utilisent un fichier d'inclusion pour la création de modèles. – ceejayoz

+0

@ceejayoz C'est l'option que j'ai utilisée sur tous les sites sur lesquels j'ai travaillé ... –

+0

J'utilise includes, mais aussi comme j'utilise l'url réécriture en changeant le? P = pagename en/pagename, si je crée une réécriture plus détaillée à l'aide de sous-dossiers virtuels, puis la suppression de la barre oblique interrompra le système. tout doit être relatif à la racine du site, pas à la racine du domaine. – Gabriel

0

Cela fonctionne très bien lorsque ma page est à la racine du domaine. Cependant, je suis actuellement en train de transférer mon site à un nouveau fournisseur d'hébergement et en tant que tel a une URL temporaire qui est: HOST-IP/~ nom d'utilisateur

Comment devrais-je écrire une règle dans le fichier .htaccess? fichier qui redirigerait tous les appels de fichiers qui commencent par un /, d'aller à HOST-IP/FILE-CALL, et à la place d'aller à HOST-IP/~ USERNAME/FILE-CALL. ?

À moins que vous pouvez mettre un .htaccess à HOST-IP/.htaccess sur le nouveau serveur, vous ne pouvez pas le faire avec .htaccess. Il semble que vous soyez sur un hôte partagé, donc toute approche qui vous permettrait de le faire avec .htaccess vous permettrait de pirater le site de tout le monde sur le serveur.

Questions connexes