さくらのレンタルサーバで形態素解析 mecab を使用する

さくらのレンタルサーバにはなんとデフォルトで mecab が入っています。

which mecab

こちらのパスにありますね。

/usr/local/bin/mecab

辞書ファイルは ipadic が入っています

ls -la /usr/local/lib/mecab/dic/ipadic 
-r--r--r--  1 root  wheel    262496 Jul 15  2013 char.bin
-r--r--r--  1 root  wheel       693 Jul 15  2013 dicrc
-r--r--r--  1 root  wheel     55910 Jul 15  2013 left-id.def
-r--r--r--  1 root  wheel   3463716 Jul 15  2013 matrix.bin
-r--r--r--  1 root  wheel      1477 Jul 15  2013 pos-id.def
-r--r--r--  1 root  wheel      6241 Jul 15  2013 rewrite.def
-r--r--r--  1 root  wheel     55910 Jul 15  2013 right-id.def
-r--r--r--  1 root  wheel  37779919 Jul 15  2013 sys.dic
-r--r--r--  1 root  wheel      5409 Jul 15  2013 unk.dic
No.1368
11/17 16:13

edit

さくらレンタルサーバ

XSERVER の cli(ssh接続) で PHP7 を使用する

● ssh接続したXSERVERで php を実行するとバージョンが低いPHPが起動する

XSERVERのコンパネでphp7を設定してもコマンドラインから実行するphpのバージョンは低いままです。

php -v
PHP 5.4.16 (cli) (built: Apr 12 2018 19:02:01) 

なぜこれが起きているかというと、php と打った時に実行されるファイルは

which php
/usr/bin/php

/usr/bin/php となっています。これのバージョンが(PHP 5.4.16)なのです。
そこで /usr/bin/php の代わりに /usr/bin/php7.2 を見に行くように変更します。

● phpのコマンドを /usr/bin/php7.2 に向ける

vi .bash_profile

この中の下記の行を変更します

PATH=$PATH:$HOME/bin

 ↓

PATH=$HOME/bin:$PATH

( $HOME/bin を先頭に入れ替えます )

● $HOME/bin/php を /usr/bin/php7.2 に向ける

mkdir $HOME/bin
ln  -s  /usr/bin/php7.2  $HOME/bin/php

● 一度ログアウトして再度ssh接続して確認

php -v
PHP 7.2.6 (cli) (built: May 30 2018 21:41:35) ( NTS )

これでOKです。

No.1350
11/17 15:18

edit

XSERVER

XSERVER に phpize で pecl拡張をインストールする

XSERVER では phpize できますので pecl拡張をインストールすることができます。

ホームディレクトリに php_source を作成してそこへインストールしたいモジュールを解凍して make します

例) XSERVERへ mailparse の PHP pecl拡張をインストールする

cd
mkdir php_source
cd php_source
wget https://pecl.php.net/get/mailparse-3.0.2.tgz
tar zxvf mailparse-3.0.2.tgz
cd mailparse-3.0.2
phpize
./configure
make

make が無事完了すると ~/php_source/mailparse-3.0.2/modules/ にモジュールが作成されます。

このモジュールを好きなディレクトリへ移動します。
(例えば ~/php_modules/)

● インストールしたモジュールを PHP の cli から使用する

php の -d オプションを使って直接モジュールファイルを指定して使用します

php -d extension=/home/<YOUR-ACCOUNT-NAME>/php_modules/mailparse.so  <実行したいPHPソース>

● インストールしたモジュールを WEBのPHPで使用する

XSERVERのコンパネの php.ini設定 から設定します

extension = /home/<YOUR-ACCOUNT-NAME>/php_modules/xxxxx.so
No.1207
11/17 14:49

edit

XSERVER

さくらのレンタルサーバでメール受信をきっかけにプログラムを起動する

● 1. メールアカウントを作成する( 例: autoexec )

さくらレンタルサーバのコンパネからメールアカウント「autoexec」を作成します。

● 2. .mailfilterを権限 0600 で作成する( 例: autoexec )

cd ~/MailBox/autoexec
touch .mailfilter
chmod 0600 .mailfilter

● 3. .mailfilterの中にプログラムに引き渡すコマンドを記述

.mailfilter

to "| /usr/local/bin/php <YOUR-PROGRAM-FULL-PATH>"

これでメール受信をきっかけにプログラムが起動します。

No.1202
11/09 09:22

edit

さくらレンタルサーバ

composer を さくらのレンタルサーバへインストールする

sshでさくらのレンタルサーバへログイン後に

● ログインシェルを bash に変更

chsh -s /usr/local/bin/bash

● composer のインストール

cd
mkdir -p usr/local/bin/
curl -sS https://getcomposer.org/installer | php -- --install-dir=usr/local/bin/

● .bash_profile に追加

とりあえず alias で設定します

# composer
PATH=$PATH:$HOME/usr/local/bin
alias      php='php -c~/www/php.ini'
alias composer='php -c~/www/php.ini ~/usr/local/bin/composer.phar'

● composer 高速化 リポジトリを日本のミラーサーバに変更

リポジトリを(packagist.jp)に変更します

composer config -g repos.packagist composer https://packagist.jp

(もしもの時に)戻す場合はこちらのコマンドからリポジトリを削除します

composer config -g --unset repos.packagist

● composer 高速化 hirak/prestissimo のインストール

composer global require hirak/prestissimo
No.1200
11/09 09:23

edit

さくらレンタルサーバ

さくらのレンタルサーバの Let's Encrypt SSL証明書を更新する

● さくらのレンタルサーバで自動更新が可能になりました

さくらのレンタルサーバ/マネージドサーバ Let's Encrypt
https://www.sakura.ne.jp/function/freessl.html?=mail_20171017

● さくらレンタルサーバ > ドメイン設定

https://secure.sakura.ad.jp/rscontrol/rs/domain

・「証明書」 「更新」をクリック
・「秘密鍵を含む新しい設定の作成」をクリック
・「LETSENCRYPT xxxxxxx」 をアップロード ・「有効化の確認」にチェックを付けて「新しい設定を有効化する」ボタンをクリック

No.1137
11/09 09:24

edit

さくらレンタルサーバ

さくらのレンタルサーバで無料の独自のSSL「Let's Enctypt」を導入する

● さくらのレンタルサーバで自動更新が可能になりました

2017年10月17日以降さくらのレンタルサーバで自動更新が可能になりました

さくらのレンタルサーバ/マネージドサーバ Let's Encrypt
https://www.sakura.ne.jp/function/freessl.html?=mail_20171017

● さくらのレンタルサーバで「Let's Enctypt」無料SSLを設定する手順

1. さくらコントロールパネルへログイン
2. 左のグローバルメニューから「ドメイン/SSL設定」を押す
3. 設定したいドメインの【登録】ボタンを押す
4. 【無料SSLの設定へ進む】ボタンを押す
5. 【無料SSLを設定する】ボタンを押す

● さくらのレンタルサーバで「http → https」 へリダイレクトする .htaccess

SetEnvIf REDIRECT_HTTPS (.*) HTTPS=$1 
<IfModule mod_rewrite.c>
RewriteEngine on 
RewriteCond %{ENV:HTTPS} !on 
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 
</IfModule>

昔ながらのやり方はこちら↓


● さくらのレンタルサーバで無料の独自のSSL「Let's Enctypt」を導入する

無料の独自SSL「Let's Enctypt」を簡単に導入し、独自ドメインを https://あなたのサーバー名/ でアクセスできるに設定します 。
簡単に導入できるネットオウルの無料ウェブサービス「SSLボックス」を利用します
なお、SSL認証レベルは【DV】です。

● SSL認証の認証レベルとは?

SSL認証の認証レベルは3段階あります。

1. ドメイン認証型(通称:DV)(ドメインの所有権を確認する一番低レベルなSSL認証)
2. 企業認証型(通称:OV)(ドメインの所有権に加えて企業の実在性を確認するスタンダートなSSL認証)
3. EV認証(通称:EV)(Extended Validation 認証。更に厳しい認証。取得するとブラウザのアドレスバーに企業名が表示される)

● ネットオウルのユーザー登録をする。

http://www.netowl.jp
の会員登録から会員登録を行います。

● ネットオウルの「SSLボックス」から 「Let's Enctypt」サーバ証明書を取得する

  • 会員登録後ログインしたら「SSLボックス管理」→「新規取得」へ移動します。
  • 「その他のサーバで利用する」をクリックします。
  • 下記のとおり入力します

https://secure.netowl.jp/netowl/?service=sslbox

SSL種別 : 『Let's Enctypt』を選択
コモンネーム : あなたのドメイン名
国 : JP
都道府県(state) : Tokyo (例)
市区町村(local) : Tokyo (例)
組織  (org) : Personal (例)
部署  (unit) : None (例)

入力後「所有者確認手続き」ボタンをクリックします

-「Web認証」「DNS認証」と選ぶ画面が出てきますが、「Web認証」を選択し、トークンファイル「ダウンロード」ボタンをします。

  • LteT1zJucsfEkFbRwObN_gckPht1yL8a4PERmoK4vBU のようなファイルがダウンロードされます。
  • ダウンロードしたトークファイルファイルをアップロードします。FTPでサーバに接続しサイトトップにディレクトリ「.well-known」を作成しその下にデレクトリ「acme-challenge」を作成しそのディレクトリにトークファイルをアップロードします。
  • アップロードが完了したらネットオウルの「所有者確認開始」ボタンをクリックします。
  • 確認が正常に完了すると証明書を発行するというボタンが表示されますのでそのボタンをクリックします。
  • 3つのファイルのダウンロードボタンが表示されますのでそれぞれクリックしてファイルをダウンロードします。ダウンロードされるファイルは以下の通り
CERT(SSL証明書) : LETSENCRYPTXXXXXXXX.cert
中間証明書    : LETSENCRYPTXXXXXXXXInt.cert
秘密鍵      : LETSENCRYPTXXXXXXXX.key

● さくらのレンタルサーバーに証明書ファイルをアップロードする


  • さくらのレンタルサーバーにログインし「ドメイン設定」ボタンを押して「 ドメイン 一覧 」を表示させます

  • 一覧リストの中の "SSL証明書を登録したいドメイン" の横の「登録」ボタンを押します
  • 「秘密鍵を既にお持ちの場合には、アップロードをしてください。」と表示されるので先程ダウンロードしたファイル『秘密鍵: LETSENCRYPTXXXXXXXX.key』をアップロードします。
  • 証明書のインストールを行います 」と表示されますので『証明書のインストール』のワクに先程ダウンロードしたファイル「CERT(SSL証明書) : LETSENCRYPTXXXXXXXX.cert」の中身をコピーペーストして貼り付けて送信します。
  • SNISSLが利用可能です 」と表示されれば正しくアップロードされています。
  • 同じ画面の真ん中あたりのメニューの「中間証明書のインストール 」をクリックします。『中間証明書    : LETSENCRYPTXXXXXXXXInt.cert』の中身をコピーペーストして貼り付けて送信します。
  • これで証明書のアップロードは完了です。画面上に「SNI SSLを利用するにはドメイン設定よりSNI SSLを有効にしてください。 」と表示されているので「ドメイン設定」をクリックします。
  • 『 4. SSLの利用をお選びください』の項目のところ「SNI SSLを利用する」を選択し送信ボタンを押します

● 独自SSLの確認

https://あなたのサーバー名/ へアクセスして独自SSLが正しく設定されていることを確認します。

添付ファイル1
添付ファイル2
No.1081
11/09 09:24

edit

添付ファイル

さくらレンタルサーバ

さくらのレンタルサーバへPHP のPECL拡張をインストールする

さくらのレンタルサーバへPECL拡張をインストールするには

  1. 使用しているPHPバージョンに対応するpecl拡張のソースをダウンロード・展開
  2. phpize , configure , make
  3. 任意の場所に【xxxxx.so】ファイルを移動
  4. php.iniに `extension = xxxxx.so` を記述

でできます。

例としてPECL拡張 `mailparse` をインストールしてみます。

1. 使用しているPHPバージョンに対応するpecl拡張のソースをダウンロード・展開する

https://pecl.php.net/
から使用したいpecl拡張をダウンロードします。 (この際対応しているPHPのバージョンを確認すること) 例 : mailparse バージョン 2.1.6 をダウンロードします

wget https://pecl.php.net/get/mailparse-2.1.6.tgz
tar zvxf mailparse-2.1.6.tgz
cd mailparse-2.1.6

2. phpize , configure , make します

ターミナルから以下のコマンドを実行します。

phpize
./configure
make
make test

3. 任意のフォルダにファイルをコピー

ここでは ホームディレクトリ直下の php_modules ディレクトリにコピーします

mkdir cd ~/php_modules/
cp ./modules/mailparse.so   ~/php_modules/

4. さくらレンタルサーバの管理画面から PHP設定の編集 を押して php.iniに設定を記述します

extension_dir =  /home/『ユーザー名』/php_modules/
extension = mailparse.so

phpinfo() で項目が表示されていれば正しくインストールされています。

5. コマンドラインからも使えるようにエイリアスを設定する

● .bash_profileに以下を追加

alias php='php -c/home/『ユーザー名』/www/php.ini'

● .cshrc に以下を追加

alias php	php -c /home/『ユーザー名』/www/php.ini

追加後にコマンドラインから

php -m

で該当モジュール(mailparse)が表示されていれば正しくインストールされています 

6. PECL拡張をインストールしたPHPを使用してcomposerを使う

composer requie hogehoge/hogehoge

とするかわりに

php /PATH/TO/COMPOSER/composer.phar   require   hogehoge/hogehoge

とすればいいでしょう。

No.1047
11/09 09:25

edit

さくらレンタルサーバ
メール

さくらのレンタルサーバへPHPのPECL拡張(ソケット拡張、FTP拡張等)をインストールする

さくらのレンタルサーバ「スタンダード」へPHPの FTP拡張(ftp.so)ソケット拡張(socket.so)をインストールする方法。

1. PHPのバージョンを確認する

PHPのソースから

phpinfo();

でバージョンを確認します。

2. 同じバージョンのPHPソースを取得してきて、さくらサーバ上で展開する

https://secure.php.net/releases/
例(バージョン 5.6.21)の場合はPHP 5.6.21 (tar.gz) をダウンロードして展開するとフォルダ php-5.6.21 ができます。

3. 拡張の共有ライブラリをmakeする

cd ./php-5.6.21/ext/sockets
phpize
./configure
make

成功すると modules/sockets.so ファイルができます。

4.任意のディレクトリに sockets.so をコピーする

例( 【ホームディレクトリ】/php_modules)の場合

mkdir ~/php_modules
cp modules/sockets.so ~/php_modules/

5.さくらレンタルサーバのコンパネ →『 PHP設定の編集』に以下を追加して保存する。

php.ini に以下を追加します

extension_dir =  /home/『ユーザー名』/php_modules/
extension = sockets.so

6.phpinfo() で確認する

成功すると と表示されます。

同様に 3〜5 の手順で ftp拡張をインストールするすることもできます。

6. コマンドラインからも使えるようにエイリアスを設定する

● .bash_profileに以下を追加

alias php='php -c/home/『ユーザー名』/www/php.ini'

● .cshrc に以下を追加

alias php	php -c /home/『ユーザー名』/www/php.ini

追加後にコマンドラインから

php -m

で該当モジュール(mailparse)が表示されていれば正しくインストールされています

7. PECL拡張をインストールしたPHPを使用してcomposerを使う

composer requie hogehoge/hogehoge

とするかわりに

php /PATH/TO/COMPOSER/composer.phar   require   hogehoge/hogehoge

とすればいいでしょう。

引用 : http://tti.matrix.jp/blog/?p=344

添付ファイル1
No.1041
11/09 09:25

edit

添付ファイル

さくらレンタルサーバ