0

RAIlS_ROOT/public のボイラー プレート 404 Rails ページのオーバーライドに取り組んでいました。これは、Pasenger でホストされている Rails 3.1.1 です。実稼働環境のコントローラー リソース パス内のルートで、html ドキュメント内のパスがコンテキストを失っていることに気付きました。これはおそらく基本的なものですが、公開したかったのです。

私は持っている

/public /public/404.html
/public/error_stylesheet/styles.css
/public/error_images/image.jpg

404.html にはリソースへの参照があります

<link href="error_stylesheets/styles.css" rel="stylesheet" type="text/css" />  
<img src="error_images/errorpageheader.jpg">

たとえば、http://app/wrongurlnameをリクエスト すると、リソース err_stylesheets および err_images フォルダーを含む 404.html ロードが表示され、取得されます。

http://app/controller/wrongまたは //app/wrong/wrongをリクエスト すると、404 ページが読み込まれますが、リソースが表示されません。

私はおそらく、erb ページを提供するために必要と思われる ApplicationController やルーティングの動作をオーバーライドすることに興味がありませんでした。奉仕しているかどうかわからない

4

1 に答える 1

0

多分、あなたはこの種のパスを試してみるべきです:

<link href="/error_stylesheets/styles.css" rel="stylesheet" type="text/css" />  
<img src="/error_images/errorpageheader.jpg">

最初のスラッシュがなければrelativeパスがありますが、スラッシュがabsoluteあれば必要なパスがあります。

于 2011-11-11T21:29:43.990 に答える