ALPHACAST|アルファキャスト

.htaccess でドキュメントルートを簡単に変更する

Apacheサーバ技術情報

.htaccessでドキュメントルートを変更

やりたい事

たとえば http://sample.com/
のドキュメントルートをURLを変更する事無く
以下のpathに変更したい

変更前:/web/sample/index.html
変更後:/web/sample/ver2/index.html

手順

/web/sample/直下に「.htaccess」ファイルを作成。
内容

サーバのrestartは不要。
配置した途端に新しいディレクトリ(./ver2/)にルーティングされます。(お気軽だなぁ)
サイトやシステムを新バージョンに一発リリースする際に便利です。

おまけ

必要機会は少ないかもしれないが、おまけとして記載。

と、
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
をさらに設定することで、
同名のファイルやディレクトリが旧ルート直下にあった場合、
旧ディレクトリにルーティングされます。
例)
/web/sample/ver2/company
/web/sample/company

と有った場合、後者にルーティングされます。

なんで?RewriteCondの働きを知れば納得

RewriteCondはRewriteRuleを実行する上での前提条件を指定するディレクティブです。
ですのでRewriteCondはRewriteRuleの前に必ず書いて下さい。
上記のおまけの場合は、

!-f (同一ファイルが指定された場合は前提条件をNGとしRewriteRuleを適用しない)
!-d (同一ディレクトリが指定された場合は前提条件をNGとしRewriteRuleを適用しない)

というルールを与えています。

以上です
ご覧頂きありがとうございました。

愛のおひねり




育毛剤

関連記事

  1. MAMP Proでアップデートが失敗する場合の対処法

おすすめ記事

  1. iPhoneやiPadで誤ってアプリケーションを購入した場合の返金方法

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

想定年利5%の全自動型運用

年利5%の不動産運用

人気の記事

  1. PyCharm をアップデートしたら日本語化が出来ない!解決!2020年5月のこと、PyChar…
  2. AppleWatch5バッテリー
    AppleWatch Series 5のバッテリー持ちをモード別に比較した結果!AppleWat…
  3. GSOMIA(じーそみあ)とはこの「GSOMIA」という言葉だが、「General Securi…
  4. ubuntu
    クーロン設定方法と記載方法かんたん紹介クーロンを利用して仕事を自動化しましょう。エディタ起動…
  5. djangologo
    'bootstrap4' is not a registered tag librarydjan…
  6. macでポート開放する簡単な方法Pythonでシステム開発しているとき、ポートが既に使用されてい…

愛のおひねり

子供の頃、ファミコンより「MSX」に飛びついたマイノリティー。

当時、雑誌に掲載されていたソース(BASIC言語)を打ち込み無料でゲームを楽しみ悦に浸る。

某大手電機メーカーの情報システム部門勤務を経て独立。

現在はIT広告媒体全般を請け負う便利屋。

趣味:
ビリヤード、フルート、カラオケ、Amazonプライムビデオ観賞