2012年7月7日土曜日

ロリポップサーバにmagentoをインストールする

ECサイトを作ってみたくてロリポップを契約した。

インストールには以下のサイトがすごく役に立ちました。
「参考サイト」http://ameblo.jp/go2park4kids/entry-11031177903.html

大まかには上記のサイトで書かれている手順でいいですが、
日本語化という点においては手順を変えます。

ロリポップにmagentoをインストール後にmagentoコネクト経由で
日本語ファイルをインストールしようとしたら、503エラーページが
表示されて以降magentoにアクセスできなくなりましたorz

そこで日本語化を踏まえて以下のようにインストール手順を変えました。

1、公式サイトからcommunity editionをダウンロードし解凍します。
2、次に日本語化用のファイルをダウンロードします。今回使ったのはgitHubに上がっているrack990の翻訳ファイルです。ダウンロードします。
3、2でダウンロードしたファイルを解凍するとjp_JPディレクトリがあるのでそれを1で解凍したmagento/app/locale/に入れます。デフォルトでen_ENが入っていることろです。
4、インストール後に管理画面で一部アクセスできなくなるのを防ぐために先に修正をします。このサイトを参考に適切にcacheディレクトリを指定します。
5、ここまで準備ができたらFTPクライアントでロリポップサーバにファイルを全てアップロードします。詳しくは参考サイトを見て下さい。
6、アップロード後のインストール作業は参考サイトをよく読んで行って下さい。
7、インストールが終わればおkです。私の場合は.htaccessファイルがアップロードされずに以下のような問題が発生しました。

【発生した問題】
「お使いのサーバは正しく設定されていません。そのため設定ファイルの機密情報が外部からアクセスされてしまいます。サーバ管理者にご連絡ください。」


上記のメッセージがインストール後に表示されました。
いろいろ調べると既にMagento-JPで質問されており原因は.htaccessがなくて機密ファイルへアクセスできる状態とのことでした。
対策としては.htaccessファイルを追加してやればおkです。
できればFTPアップロードするときに一緒に上げておきたいですね。

これでようやく無事にインストールできました+:。ヾ(o・ω・)ノ゜.+

2012年7月6日金曜日

Javaでオレオレ証明書のサーバに対してhttpsアクセス

テストでローカルのオレオレ署名のサーバにhttpsアクセスしたいのでウェブでサンプルを探したけど、非推奨パッケージを使っているものが多くて大変でした。

ようやく動いたのがあるのでメモしておく。

以下のソースを参考にしてください。
参照元はここです。
適当なimportを行なって下さい。

private void initHttps(){
  try
  {
   mClient = new DefaultHttpClient();
   final SSLContext sslContext = SSLContext.getInstance("SSL");
   sslContext.init(null, new TrustManager[] { new X509TrustManager() {
    public void checkClientTrusted(X509Certificate[] arg0,
      String arg1) throws CertificateException {
    }
    public void checkServerTrusted(X509Certificate[] arg0,
      String arg1) throws CertificateException {
    }
    public X509Certificate[] getAcceptedIssuers() {
     return new X509Certificate[0];
    }
   } }, null);
   final SSLSocketFactory factory = new SSLSocketFactory(sslContext,
     new AllowAllHostnameVerifier());
   final Scheme https = new Scheme("https", 443, factory);
   final SchemeRegistry schemeRegistry = mClient
     .getConnectionManager().getSchemeRegistry();
   schemeRegistry.register(https);
  }
  catch (Exception e)
  {
  }
 }