さくらVPSのApache+OpenSSLにVeriSignのSSLを入れる
すごく簡単に入ったけどベリサインの証明書ははじめてなのでメモ。
mod_ssl が入っているか
なかったので yum でインストール。(ちなみに Apache は v2.2.3)
生成した秘密鍵を設置する。
# cd /etc/httpd/conf
# mkdir ssl.key
# vi ssl.key/server.key
# chmod 400 ssl.key/server.key
証明書はメールで送られてくるのでそれを vi 等でコピペする。
# mkdir ssl.crt
# vi ssl.crt/server.crt
# chmod 400 ssl.crt/server.crt
中間証明書は、Secure Site SSLの場合は下記URLのものをコピペする。
http://www.verisign.com/support/verisign-intermediate-ca/secure-site-intermediate/index.html
# mkdir ssl.pem
# vi ssl.pem/inca.pem
# chmod 400 ssl.pem/inca.pem
Apacheの設定ファイルに各証明書を指定する。
# vi ../conf.d/ssl.conf
SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key
SSLCertificateChainFile /etc/httpd/conf/ssl.pem/inca.pem
再起動して完了!
# service httpd restart
さくらVPSにLAMP環境をつくる【Apache2.2, PHP5.3, MySQL5.5】
備忘録として失敗から成功に至るまで全部のせてます。
成功パターンは「php53で再インストール」の項から
CentOSデフォルトのyumレポジトリではApache, PHP, MySQLのバージョンが古いので、epelとremiレポジトリを設定する。
# rpm -ivh http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
# rpm -ihv http://rpms.famillecollet.com/enterprise/5/remi/x86_64/remi-release-5-7.el5.remi.noarch.rpm
# yum repolist
確認
# yum info httpd --enablerepo=remi
# yum info php --enablerepo=remi
# yum info mysql --enablerepo=remi
yum-cronの設定
yum-cron のすすめ
http://www.sssg.org/blogs/naoya/archives/748
自動的にパッケージがインストールされてしまうので、更新パッケージを確認するだけの設定する。
# vi /etc/sysconfig/yum-cron
CHECK_ONLY=yes
DOWNLOAD_ONLY=yes# service yum-updatesd stop
# chkconfig yum-updatesd off
# service yum-cron restart
# chkconfig yum-cron on
キャッシュのクリア
apacheのインストール
PHPのインストール
# yum -y install php php-devel php-pear php-mbstring php-gd php-mysql --enablerepo=remi
UTF-8に設定
# cp -pi /etc/php.ini /etc/php.ini_20120226_higuchi
# vi /etc/php.inidate.timezone = "Asia/Tokyo"
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = UTF-8
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.substitute_character = "?"
default_charset = "UTF-8"
MySQLのインストール
UTF-8に設定する
# cp -pi /etc/my.cnf /etc/my.cnf_20120226_higuchi
# vi /etc/my.cnf[mysqld]
character-set-server = utf8
skip-character-set-client-handshake
[mysql]
default-character-set=utf8
起動開始するも失敗!!?
# service mysqld start
Timeout error occurred trying to start MySQL Daemon.
Starting MySQL: [FAILED]
ログを確認するとシステムテーブルがないと言われる
# tail -f /var/log/mysqld.log
120226 16:54:58 mysqld started
120226 16:54:58 InnoDB: Started; log sequence number 0 1595675
120226 16:54:58 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
120226 16:54:58 mysqld ended
初期化する
# mysql_install_db
再度起動を試みる
# service mysqld start
Starting MySQL: [ OK ]
成功した!!
# chkconfig mysqld on
起動と文字コードの確認、DB・ユーザ作成
# mysql -u root
mysql> status;
mysql> show variables like 'character_set%';mysql> create database testdb character set utf8;
mysql> grant all on testdb.* to testdb_user@localhost identified by 'パスワード';
rootパスワード設定
# mysqladmin -u root password パスワード
サーバ設定終わり!
いざCakePHPを動かそうとすると…
Fatal error: Call to undefined function mysql_query() in 〜/cake/libs/model/datasources/dbo/dbo_mysql.php on line 613
あれ、mysqlの関数を実行できない。。
# ps aux | grep msyql
プロセスは立ち上がっている。
rpmでphp-mysqlがインストールされているかチェック。
# rpm -qa | grep php
php-cli-5.3.10-2.el5.remi
php-devel-5.3.10-2.el5.remi
php-common-5.3.10-2.el5.remi
php-pdo-5.3.10-2.el5.remi
php-mbstring-5.3.10-2.el5.remi
php-pear-1.9.4-3.el5.remi
php-gd-5.3.10-2.el5.remi
php-5.3.10-2.el5.remi
あれ、入ってない…?
再インストール
remiにあるphp-mysqlは5.3じゃないことが判明…!
じゃあ別のレポジトリ!
# rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
# yum -y --enablerepo=utterramblings --disablerepo=remi,base,epel,extras,updates install php-mysql
同じくダメ…
とちょっとググったらphp53なるパッケージがCent標準のリポジトリで提供されてるww
無駄な時間つかったw
まずはリムーブ
# yum remove php php-devel php-pear php-mbstring php-gd php-mysql --enablerepo=remi
php53で再インストール
これで正常に起動!
ちなみにチェックとかははっしょてます。
phpmyadminでmcryptが必要だったので追加インストール
iTunes Connect休業中
事前にDeveloper宛に22〜29日はiTunes Connectはお休みです、との連絡をもらっていたが、ログインしてみると通常通りAdd New APPできたので、あれ?iTunes Connect使えるじゃん、審査はしてくれないだろうけど申請だけしちゃおう。
と思ったら最後のアプリうpで休業中エラー。
「The iTunes Store is not currently accepting content due to the holiday. Please try again after December 28th. We apologize for the inconvenience that this causes.」
あっちは年末年始は通常通り営業するのかな?
Phonegapでつくったプロジェクトのコピー
めも
- 左(デフォルト)にあるパッケージエクスプローラからコピー元のプロジェクトを右クリック→コピー
- パッケージエクスプローラの適当な空白部分で右クリック→貼付け
- プロジェクト名を入力してOKクリック
- パッケージエクスプローラのコピー先プロジェクト→src展開→パッケージ名を右クリック→リファクタリングクリック→名前変更クリック→新しいプロジェクト名を入力してOKクリック
- さらに展開してActivity.javaの名前を同じく名前変更
- gen展開して同じく名前変更
- res→values→string.xmlを開き、アプリ名を変更
- AndroidManufest.xmlを開き、manufestタグのpackageと、applicationタグのandroid:nameを新しいパッケージ名に変更→configuration updateはYES
- 実行
- 初回はCould not find ◯◯.apk!と言われるのでもう一度実行
アイコン画像の差し替えも忘れずに。
(忘れてリリースしたやつより)
MacBook Pro EFI ファームウェア・アップデート 2.2による起動の不具合
先ほど「MacBook Pro EFI ファームウェア・アップデート 2.2」がきていたので、特に何も考えずにインストールして再起動したら下記メッセージが表示されMacOSXが起動してくれなかった。(ノД`)
"No bootable device -- insert boot disk and press any key"
【対処法】
1.電源を切って、Option(alt) ボタンを押しながら起動する。
2.通常の起動ドライブを選択する。
3.Mac OS X が起動したら、リンゴマーク→システム環境設定→起動ディスク→通常の起動ドライブを選ぶ
これで大丈夫でした。
EC2 にCalipso のインストール【Node.js, MongoDB インストールから Calipso インストールまで】
Node.js, MongoDB のインストールが完了したらいよいよ Calipso のインストールです。
NPMコマンドで Calipso インストール
$ npm install calipso -g
ソースを展開するディレクトリ作成
$ mkdir /var/www/html/MySite
Calipso コマンドのオプション site でサイト構築
$ calipso site /var/www/html/MySite
ディレクトリ移動
$ cd /var/www/htmlMySite
バックグラウンドでサーバ起動
$ calipso server server.port=3000 &
クラスタ構成の場合はこちらで
$ calipso cluster server.port=3000 &
#モジュールのインストールやその他コマンドは GitHub で!
https://github.com/cliftonc/calipso
あとはブラウザで確認
http://自サーバのIP:3000/
EC2 に MongoDB のインストール【Node.js, MongoDB インストールから Calipso インストールまで】
Node.js インストールからの続き。
3. MongoDBのインストール
npmのインストール
$ curl http://npmjs.org/install.sh | sh
npmで、MongoDBのインストール
$ npm install mongodb
npmで、JSONtoXMLのインストール
$ npm install jsontoxml
MongoDBのダウンロード
$ sudo wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.8.0.tgz
展開
実行ファイルの移動
$ cd mongodb-linux-x86_64-1.8.0
$ mv ./bin/* /usr/local/bin/
実行してみる
$ cd ~/
$ mkdir db
$ mongod --dbpath ~/db/ --logpath ~/db/db.log --fork
$ forked process: 23041
all output going to: /home/higuchi/db/db.log
$ mongo
MongoDB shell version: 1.8.0
connecting to: test
> db.sample.insert({uid:'user1',name:'make'})
> db.sample.find({uid:'user1'})
{ "_id" : ObjectId("4d902dfea62cf8f3e1451f20"), "uid" : "user1", "name" : "make" }
> exit
bye