「ngrok http -Host-header = client1.dev 80」で自分のサイトディレクトリにあるクライアントサイトをトンネルしようとしていますが、URLにアクセスすると404が返されます。いくつかの実験を行った後、index.htmlファイルをホームディレクトリに置くと、そのファイルが表示されます。ホームディレクトリのファイルが機能するのにサイトディレクトリのファイルが機能しない理由がわかりません。ここに何か欠落しているに違いありません。
ディレクトリ構造:
www
|home
|sites
| client1
| client2
...
vhost.conf:
<Directory "/www">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<Virtualhost *:80>
VirtualDocumentRoot "/Users/myname/www/home/wwwroot"
ServerName home.dev
UseCanonicalName Off
</Virtualhost>
<Virtualhost *:80>
VirtualDocumentRoot "/Users/myname/www/sites/%1/wwwroot"
ServerName sites.dev
ServerAlias *.dev
UseCanonicalName Off
</Virtualhost>
クールすべての構成は良好です。コマンドを実行するだけです
ngrok http -Host-header=rewrite home.dev:80
ngrok http -Host-header=rewrite sites.dev:80
私にとっては、それだけで動作しました:
ngrok http -Host-header=sites.dev 80
sites.devを仮想ホスト名に変更します
ソース: 仮想ホスト(MAMP、WAMPなど)
より永続的な構成が必要な場合は、~/.ngrok2/ngrok.yml
設定ファイル。
tunnels:
test: # the name of your tunnel to call from the command line
addr: 80 # Your localhost port
proto: http
Host_header: test.localhost # Your localhost virtualhost
そして、あなたはあなたのコマンドラインから実行することができます
ngrok start test