Objectif: vouloir partager un aperçu du site Web à l'aide de ngrok, ce qui crée un tunnel à partir duquel mon hôte local peut être vu avec une URL de quelque chose comme mywebsite.ngrok.io
Problème: j'utilise WAMP et mon dossier localhost ressemble à ceci:
localhostdirectory
|-- website1
|-- website2
|-- etc
Pour accéder à un site Web, je tape: localhost/website1/
dans le navigateur, je ne souhaite tunneler que cette URL, les solutions possibles seraient:
Configuration d'un hôte virtuel, je passerais par les tracas de la configuration manuelle d'un hôte virtuel , puis j'obtiens quelque chose comme website1.dev, puis je le transmettais à ngrok en tant qu'en-tête Host dans le Requête HTTP, comme ça :
ngrok http -Host-header=website1.dev 80
Je n'ai pas compris ce qu'est l'en-tête Host, et pourquoi ne puis-je pas transmettre une URL relative comme localhost/website1/
, quelle est également l'option de réécriture?
Existe-t-il un meilleur moyen d'atteindre mon objectif de manière plus simple, en passant par les alias WAMP?
Si vous vous contentez d'Apache Vhost, il vous suffit d'exécuter la commande
ngrok http -Host-header=rewrite YOUR-LOCAL-DOMAIN:PORT
N'oubliez pas de modifier le fichier hôte pour la résolution @IP <-> VOTRE-DOMAINE LOCAL
J'ai essayé ci-dessous.
Quand j'ai couru $ ./ngrok http 80
ngrok écouter localhost:80
qui affiche le tableau de bord car le serveur Apache fonctionne sur port 80
. Ensuite, j'ai essayé d'exécuter le sous-dossier dans un autre port, ce qui a résolu le problème. Supposons que vous avez un projet dans xyz
et que ngrok devrait le pointer. Faites ensuite
$ cd /opt/lampp/htdocs/xyz
$ php -S localhost:8080
Ici 8080
est tout port inutilisé. localhost:8080
dirige directement vers xyz
puis ouvre un autre terminal
$ ./ngrok http 8080
En faisant cela, ngrok écoutera 8080
port où votre xyz
est en cours d'exécution.
J'espère que cela t'aides!!
Après avoir configuré l'adresse ngrok pour pointer vers localhost sur le port 80, vous pouvez accéder à vos sites Web par leurs noms. Ex:
ngrok http -subdomain=dev 80
Accéder au site Web1:
dev.ngrok.io/website1