65908


本番サイト（`https://www.mydomain.or.jp/`）のファイルをコピーし修正したものを、テストサイトで確認しています。

本番とテストは別のサーバーです。

ファイルのリンクはルートパスから書かれており、テストサイトでリンク切れとなってしまいます。

そこで以下のように`.htaccess`をつかってファイルパスを読み替えて参照するようにして、リンク切れを解消したいです。（リンクのコードを書き換えない方法としたい）

beforeはリンク切れが起こっているもので、afterのような絶対パスにリダイレクトさせたいということです。

この場合`.htaccess`の書き方、設置場所はどのようになりますか？

`/`から始まる全てのリンクを差し替えたいです。

よろしくお願いいたします。

**before**

[code]

    <link rel="stylesheet" href="/common/css/import.css" type="text/css">
    
[/code]

**after**

[code]

    <link rel="stylesheet" href="https://www.mydomain.or.jp/common/css/import.css" type="text/css">
    
[/code]

  
  
次の記事にならって、下のように`.htaccess`を作成しましたがうまくいきません。  
<https://qiita.com/awesam86/items/de58cf6afc83b0d52890>  
どこが誤りでしょうか？  
  

[code]

    RewriteEngine on
    RewriteRule ^(.*)\.((gif|png|jpe?g|css|ico|js|svg))$ https://www.mydomain.or.jp/$1.$2
    
[/code]

`mydir/index.html`で`index.html`がリンク切れを起こしている時、`.htaccess`を  
`mydir`と同じ階層に格納。`mydir` 配下の同様のリンクを全て差し替えたい。


CC BY-SA 4.0
2020-04-23T10:33:46.813
65890
2020-04-24T06:17:17.327
2020-04-24T06:17:17.327
3060
12297
question
html .htaccess
テスト環境のHTMLからルートパスで書かれた本番環境のリソースを参照したい


> mydir/index.htmlでindex.htmlがリンク切れを起こしている時、.htaccessを  
>  mydirと同じ階層に格納。mydir 配下の同様のリンクを全て差し替えたい。

この場合、`.htaccess` を置くのはリダイレクトしたいリソースに対応するディレクトリです。例:
`ドキュメントルート/common/.htaccess`  
ブラウザは `mydir/index.html` を取得したあとに `mydir/` にはアクセスしません。

テスト環境であれば、`.htaccess` を使わずに `httpd.conf` に書いてしまってもいいかもしれません。

  * そもそも mod_rewrite が使える環境かどうかも要確認です
  * .htaccess が使える設定かどうかも要確認です
  * 私だったら `index.html` に `<base href="http://www.mydomain.or.jp/">` を書くだけで済ませるかもしれません。


CC BY-SA 4.0
2020-04-24T02:09:02.000
65908
2020-04-24T02:09:02.000
3475
65890
answer