2016-10-06 9 views
0

私はインデックスとスタイルシートファイルをルートフォルダ(つまりパブリックHTML)に持っています。画像は、下位のフォルダ(パブリックHTML /画像)に設定されています。表示されない背景画像を持つdivコンテナがあります。 CSSでは、コードは次のようになります:下のフォルダからの画像リンクが動作しない

#exampleDiv{ 
    background-image: url("images/image.jpg"); 
    background-size: 40px 40px; 
} 

これは、デスクトップファイルからサイトをロードすると完全に正常に動作します。しかし、実際のサーバー上で実行するとすぐに、イメージは見つからない。私は "images/image.jpg"の前に "/"を追加することからすべてを試しました。私はチェックし、再チェックして再チェックして、自分のコードが妥当であり、タイプミスがないことを確認しました。インデックスとスタイルシートを含むルートディレクトリ(public html)にイメージを配置し、 "images/image.jpg"から "images /"部分を削除すると、イメージは正常に表示されます。何か案は?私は本当にこれがうまくいかない理由を理解していません。私のサイトのキャッシュはフラッシュされ、ページに加えられたすべての変更が読み込まれます。

編集:私はまた、「../」と「../../」と同様

編集をバックスラッシュの多様性を試してみました:私はそれを考え出しました!

+0

サーバー上の* images *フォルダにアクセス権がありますか? –

+0

あなたのURLに '../'を追加しようとしましたか? – Swordys

+0

私は "../"を追加しようとしましたが、うまくいきませんでした。私はアクセス権を持っているかどうかはわかりません。私はこれまでにこの問題を抱えていませんでした。 – ewrjontan

答えて

0

私が理解しているように、あなたのファイル構造は少し似ていますか?

html/ 
|-index.html 
|-style.css 
|-images/ 
    |-image.jpg 

よく試みることができます。これらは私のパスが期待どおりに動かないときに最初にやることです。 Windows環境からUnixベースのサーバーに移行する場合は、参照する名前とフォルダ/ファイルの名前が同じであることを確認してください。サーバ上のファイルのアクセス権もチェックする必要があります.html上のファイルレベルでコマンド "chmod 755 -r html"を使用すると、それらを適切に変更することができます(UNIXの場合)。参照するファイル名の先頭に "./"を使用して、現在のディレクトリからのルートを明示的に指定することもできます。

+0

ファイル構造は正しいです。すべてのファイル名が適切なケースであり、私は運がない "./"を追加しようとしました。私はパーミッションをチェックします。 – ewrjontan

+0

ああ、chmodを使うときにもsudoを使ってください! –

+0

ああ、ファイルのアクセス許可をチェックアウトしたい場合は、ls -laを使用してコマンドラインでこれを行うことができます。 "drwxr-xr-x"または "-rw --- ---- "、これらの意味が正確にわかる場合は、[this](https://support.rackspace.com/how-to/checking-linux-file-permissions-with-ls/)を参照してください。 )リンク。 GUIを備えたほとんどのFTPクライアントには、これらのアクセス許可も表示されます(私はfilezillaがとにかく実行することを知っています)。 –

1

私はばかです。私のイメージフォルダは実際には「アイコン」と呼ばれ、私は例として「イメージ」を使用しました。私が "http://website.com/icons"経由でアクセスできるかどうかを確認すると、明らかにiconsフォルダが内部的に使用されていて、競合が発生しているようです。今私は知っている。学ぶ良いレッスン。

関連する問題