ホーム » ブログ » シンボリックを使ってロリポップでのサーブドメインページレイアウト崩れの解決方法
このエントリーをはてなブックマークに追加
@2012/06/12

スポンサーリンク
当サイト以前は無料レンタルサーバを使ってた(000webhost.com)。無料のレンタルサーバが提供したサービスとして、使いやすさや稼働率などが悪くはなかったけど、やはり有料のレンタルサーバを使うのは安心ですね。
つい先日レンタルサーバをロリポップに切り替った。
ディスク容量13GB、MySQL一個付き、月額263円なんか、個人サイトとして十分だと思うので、早速サイトを引っ越ししました。

サイトの規模が大きければ大きいほど、SEOの観点などを考えると、サブドメインが必要になった。当サイトにも掲示板を単独でサーブドメインを使いましょうと考え、http://taobao.jp/bbsをhttp://bbs.taobao.jp/に変った。
残念ですが、「相対パース」や「絶対パース」などの問題がよく出てきた。たとえ、ソースの中で
 <link href="/css/bbs/common.css" rel="stylesheet" type="text/css">
として、 統一ドメインhttp://taobao.jp/bbsの場合、「/css/bbs/common.css」はプロジェクト直下のcss/bbs/common.cssと扱われる。 サーブドメインhttp://bbs.taobao.jpの場合、「/css/bbs/common.css」はプロジェクトディレクトリ中の「bbsフォルダ」直下のcss/bbs/common.cssと認識される(実際存在しないファイルです)。このため、元々正常に表示できるhttp://taobao.jp/bbsページですが、サーブドメインhttp://bbs.taobao.jpに切り替ると、ページのレイアウトを崩れてしまった。この障害を解決のため、シンボリックを使ってうまく表示できるかなと考えてました。 しかし、ロリポップの「ロリポプラン」はSSHが使えません。どやてシンボリックを作成する? さて、ここからが本題です。 解決方法は:PHPを使ってシンボリックを作成する。 まず、create-symlink.phpを作成し、下記のコードをファイルに記入し、サーブドメインフォルダにアップロードする。
 symlink( '/home/users/x/xxxxxxx/web/your-domain/css, 'css' ); 
※上記コードでの「/x/xxxxxxx/」はロリポップでのあなたのドメイン置き場所です。echo dirname(__FILE__);でご確認ください。

次ましては、http://bbs.taobao.jp/create-symlink.phpをブラウザでアクセスして見る。真っ白なページを表示するはずです。
※warningや権限がないエラーが発生する場合、ロリポップの管理画面で、php.iniのsafe-modeをOFFにして、もう一回やる。

その後、もう一個のFTPを開いて、/your-domain/bbs/フォルダの直下、cssシンボリックあるかを確認する。
同様の方法で、jsシンボリックやimageシンボリックを作成できる。

最後、サーブドメインhttp://bbs.taobao.jpにアクセスし、ページが綺麗に表示できるはずです。

以上、シンボリックを使って、ロリポップでのサーブドメインにした後、絶対パースの問題を解決した。


♪ 当記事がお役に立ちましたらシェアして頂ければ嬉しいです。
1人
このエントリーをはてなブックマークに追加


★ 当記事を閲覧の方は下記の【関連記事】も閲覧していました。

お名前:

 

EMAIL:

 

URL:

 

認証コード:

zanmai.net-safecode

 


※会員の方は認証コードを要らないから、新規登録をオススメ!

check