URLの書き方と短縮設定について調べてみた
Web開発をやっていると、URLの書き方が気になってきますよね。特に「https://」とか「www」の部分って省略されてることが多いけど、何がどこで決まってるのか知りたくなりました。
正式なURLってなにも省かないことだよね?
そもそもURLって、下みたいなフルの書き方が正しいですよね。
https://www.example.com/
けど、実際はこれを省いたり、短くしたりする場面が多い。その時に何が関与しているかを見ていきましょう。
主な省略の例とその設定場所
1. プロトコル (https://)の省略
問題: たまに「https://」が見えないことがありますよね?
理由: ブラウザが自動で表示を省いてくれることが多いです。でも実際は全てのURLにはあるもので、省かないと問題が起こる場面もあります。
設定方法: 特殊な設定はいりませんが、フロントエンドのコードを書くときは「https://」を残しておいたほうがセキュリティ的には上。
2. www の省略
問題: 「wwwあり」と「なし」の両方があるのはなぜ?
理由: これは、DNS設定によります。多くのサイトでは、wwwがなくてもリダイレクトされるように設定されています。
設定方法:
- DNS設定でwwwのありなしを突き合わせる
- Webサーバー側でリダイレクト設定
Apacheの例:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
3. デフォルトファイルの省略 (/index.html)
問題: どうして「/index.html」が省かれるの?
理由: Webサーバーは「デフォルトファイル」を自動で読み込むので、ブラウザには表示されません。
設定方法:
- Apacheでは「DirectoryIndex」を設定
DirectoryIndex index.html index.php
- NGINXでは「index」ディレクティブで設定
location / {
index index.html index.htm;
}
4. 短縮URLの使用
問題: SNSでたまにめちゃくちゃ短いURLを見るけどあれって?
理由: 短縮URLサービスが自動で不要な情報を省き、新しいURLを生成しています。
設定方法:
- bit.lyやt.coなどの外部サービスを利用
- 自分のサーバーで短縮したければ YOURLS を使って設定できます
まとめ
省略方法 | 設定場所 | メモ |
---|---|---|
プロトコル省略 | ブラウザ自動 | セキュリティ重視の場面では残したほうがよい。 |
wwwの省略 | DNS設定、Webサーバー側設定 | wwwの有無を突き合わせるのが重要。 |
デフォルトファイル省略 | Webサーバーのデフォルト設定 | index.html などはサーバー側の設定で省略される。 |
短縮URLの使用 | 外部サービスや自分の短縮システム | SNSで便利だが、安全に使うには利用先に注意。 |