CPI:CPIでベーシック認証を設定する方法

CPIのサーバで「.htaccess」「.htpasswd」をサーバにアップロードしてベーシック(Basic)認証を設定しようとした時にうまく動作しませんでした。

コントロールパネルからベーシック認証を設定することもできるみたいですが、テストサイトでしか設定できないのでしょうか???

cpi_basic

色々調べてみるとコントロールパネルにある「プログラムのパスとサーバの情報」画面に記述されている「httpドキュメントルート」のファイルパスでベーシック認証を設定しようするとうまく動作しないようです。

ベーシック(Basic)認証をする際のファイルパス

【修正前】

/usr/home/ユーザID/html

【修正後】

/home/ユーザID/html/

また、もう一つ問題があり、CPIサーバではパスワードの暗号化はCRYPTではなくMD5で暗号化したパスワードを使用するそうです。

MD5形式のパスワード取得(ベーシック認証)

サーバにSSHでログインし、下記のコマンドを実行します。

htpasswd -nbm username password

-n:結果のみを出力。(テスト用)
-b:コマンドライン引数として指定
-m:MD5形式でハッシュ

出力結果を「.htpasswd」に記述し、サーバにアップロードします。


上記二つの設定をしたところ、正常にベーシック認証を設定することができました。

下記のサイトを参考にさせていただきました。
ありがとうございました。

CPI レンタルサーバの Basic 認証パスワードでハマる

EC-CUBE:EC-CUBEで独自のページを作成する方法

EC-CUBEで管理画面から静的なページを作成することはできますが、システムを入れたい時などオリジナル独自のページを作成したい場合があります。

あまりしないことだと思うので忘れないように記載します。

EC-CUBEカスタマイズして独自のページを作成した時の方法をメモします。

※バージョンによって違うかもしれません。


EC-CUBEで独自のページを作成

「/sample/index.php」を作成する場合

※aboutsページ(当サイトについて)をコピーして追加した時の方法を記述します。

下記4つのファイルをコピーします。

/html/abouts/index.php
/data/class/pages/abouts/LC_Page_Abouts.php
/data/class_extends/page_extends/abouts/LC_Page_Abouts_Ex.php
/data/Smarty/templates/default/abouts/index.tpl

コピーしたファイルを下記のように設置します。
コピーする際にディレクトリ名やファイル名を作成するページの名前で書き換えます。
※aboutsをsampleに変更

/html/sample/index.php
/data/class/pages/sample/LC_Page_Sample.php
/data/class_extends/page_extends/sample/LC_Page_Sample_Ex.php
/data/Smarty/templates/default/sample/index.tpl

ファイルの設置が完了したら、それぞれのファイルの中身を修正します。

/html/sample/index.php

require_once '../require.php';
require_once CLASS_EX_REALDIR . 'page_extends/abouts/LC_Page_Abouts_Ex.php';

$objPage = new LC_Page_Abouts_Ex();
$objPage->init();
$objPage->process();

↓(修正)

require_once '../require.php';
require_once CLASS_EX_REALDIR . 'page_extends/sample/LC_Page_Sample_Ex.php';

$objPage = new LC_Page_Sample_Ex();
$objPage->init();
$objPage->process();

/data/class/pages/sample/LC_Page_Sample.php

class LC_Page_Abouts extends LC_Page_Ex
{

↓(修正)

class LC_Page_Sample extends LC_Page_Ex
{

/data/class_extends/page_extends/sample/LC_Page_Sample_Ex.php

require_once CLASS_REALDIR . 'pages/abouts/LC_Page_Abouts.php';

class LC_Page_Abouts_Ex extends LC_Page_Abouts
{

↓(修正)

require_once CLASS_REALDIR . 'pages/sample/LC_Page_Sample.php';

class LC_Page_Sample_Ex extends LC_Page_Sample
{

/data/Smarty/templates/default/sample/index.tpl

表示したい内容に書き換えます。


上記、修正したファイルをサーバにアップロードすればページを表示することができます。

システムで処理を追加する場合は「LC_Page_Sample.php」のアクションに記述します。

    public function action()
    {
		// 処理を記述
    }

ブロックや携帯ページを独自で追加する時も基本は同じように行います。
ブロックの場合はデータベースに追加する必要があります。

jQuery:css()メソッドで指定した要素にCSSを追加する

jQueryで指定した要素のスタイル追加・変更する場合、css()メソッドを使用します。

css()メソッドは下記のように使用します。

$('要素').css('プロパティ', '値');

CSSプロパティを複数設定する場合は下記のように使用します。

$('要素').css({'プロパティ':'値', 'プロパティ':'値'});

アクション時に指定した要素のスタイル変更させたいなど、色々な場面で使うことが多いと思います。

今回はjQuerycss()メソッドを使用して、指定した要素のCSS追加・変更する方法をメモします。


ボタンをクリック時、指定した要素のCSSを追加・変更

jQueryを読み込みます。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>

HTML

<input type="button" id="click" value="クリック">

<div id="hoge">
テキスト
</div>

JS

・文字の色を変更する場合

<script type="text/javascript">
$(function(){
    $("#click").click(function(){
        $('#hoge').css('color', '#0000FF');
    });
});
</script>

・複数スタイルを追加する場合(色、フォントサイズ)

<script type="text/javascript">
$(function(){
    $("#click").click(function(){
        $('#hoge').css({'color':'#0000FF', 'font-size':'30px'});
    });
});
</script>

・CSSを削除する場合

値を空にするとCSSを削除することができます。

<script type="text/javascript">
$(function(){
    $("#click").click(function(){
        $('#hoge').css('color', '');
    });
});
</script>

Linux:サーバをシャットダウン・再起動する

Linuxサーバの電源落とすことは頻繁にはしないと思いますが、
サーバの負荷が高くなった時やサーバ自体を移動する場合など、
電源を切らなければいけない状況があるかと思います。

あまり頻繁には使用しないのでメモします。

サーバシャットダウン再起動する場合は「shutdown」コマンドを使用します。

shutdown」コマンドを使用して、Linuxサーバシャットダウン再起動をする方法をメモします。


「shutdown」コマンド

システムのシャットダウンや再起動で使用します。
オプションを付けることで時間を指定することが可能です。

shutdown [-h,-r] [オプション]

「-h」:ショットダウンする
「-r」:再起動する
「now」:今すぐ実行
「hh:mm」:時間を指定する
「+mins」:分を指定(現在の時間より)


シャットダウン・再起動

SSHでログインし、rootに切り替えます。

・今すぐシャットダウンする場合

shutdown -h now

・時間を指定してシャットダウンする場合

shutdown -h 10:00

・10分後にシャットダウンさせる場合

shutdown -h +10

・今すぐ再起動する場合

shutdown -r now

・時間を指定して再起動する場合

shutdown -r 10:00

・10分後に再起動させる場合

shutdown -r +10

Javascript:locationオブジェクトでURL情報を取得する

JavascriptでアクセスしているURL情報を取得する場合、
locationオブジェクトを使用すれば簡単に取得することができます。

URLホスト名アンカーなど色々な情報を取得することができます。
また指定したURLに移動することもできます。

下記にlocationオブジェクトの機能や使用例をメモします。


locationオブジェクトの機能説明

※下記URLでアクセスした場合
「http://www.hoge.com/location/index.html?aaa=100#test」


location.href

現在アクセスしているURLを取得します。
また、指定したURLに遷移します。

・URLを取得

var url = location.href;
alert(url);

【実行結果】

http://www.hoge.com/location/index.html?aaa=100#test

・指定したURLに遷移

location.href = 'http://google.co.jp';

指定したURLに遷移します。


location.host
location.hostname

現在アクセスしているホスト情報を取得します。

・ホスト情報を取得(host)

var host = location.host;
alert(host);

【実行結果】

www.hoge.com

・ホスト情報を取得(hostname)

var hostname = location.hostname;
alert(hostname);

【実行結果】

www.hoge.com

location.hash

現在アクセスしているアンカーを取得します。
また、指定したアンカーに移動します。

・アンカーを取得

var hash = location.hash;
alert(hash);

【実行結果】

#test

location.port

現在アクセスしているポート番号を取得します。


location.protocol

現在アクセスしているプロトコルを取得します。

var protocol = location.protocol;
alert(protocol);

【実行結果】

http:

location.pathname

現在アクセスしているパス情報を取得します。

var pathname = location.pathname;
alert(pathname);

【実行結果】

/location/index.html

location.search

現在アクセスしているパラメータ情報を取得します。

var parameter = location.search;
alert(parameter);

【実行結果】

?aaa=100