Category - レンタルサーバー

FuelPHP1.7をロリポップ上で動作させる

FuelPHP1.7で新規に作成したプロジェクトを、ロリポップにアップロードしたら 500 Internal Server Error 。

プロジェクトインストール時に生成された .htaccess の 「Options +FollowSymLinks -Indexes」をコメントにすれば動作可能。

read more

CentOS 5.4 にyumをインストール

アダルト向けVPSでyumが有効でなかったため
CentOSの古いバージョンのミラーはhttp://vault.centos.org/

ディストリビューションの確認
# cat /etc/redhat-release
CentOS release 5.4 (Final)
# uname -a
Linux fairy-live.com 2.6.18-028stab068.3 #1 SMP Tue Feb 16 20:21:42 MSK 2010 i686 i686 i386 GNU/Linux

次のコマンドを実行

wget http://vault.centos.org/5.4/os/i386/CentOS/python-elementtree-1.2.6-5.i386.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/sqlite-3.3.6-5.i386.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/sqlite-devel-3.3.6-5.i386.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/python-iniparse-0.2.3-4.el5.noarch.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/python-sqlite-1.1.7-1.2.1.i386.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/rpm-python-4.4.2.3-18.el5.i386.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/m2crypto-0.16-6.el5.6.i386.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/python-urlgrabber-3.1.0-5.el5.noarch.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/libxml2-2.6.26-2.1.2.8.i386.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/yum-3.2.22-20.el5.centos.noarch.rpm
wget http://vault.centos.org/5.4/os/i386/CentOS/yum-fastestmirror-1.1.16-13.el5.centos.noarch.rpm

rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

chmod +x *

rpm -ihv python-elementtree-1.2.6-5.i386.rpm
rpm -ihv sqlite-3.3.6-5.i386.rpm
rpm -ihv sqlite-devel-3.3.6-5.i386.rpm
rpm -ihv python-iniparse-0.2.3-4.el5.noarch.rpm
rpm -ihv python-sqlite-1.1.7-1.2.1.i386.rpm
rpm -ihv rpm-python-4.4.2.3-18.el5.i386.rpm
rpm -ihv m2crypto-0.16-6.el5.6.i386.rpm
rpm -ihv python-urlgrabber-3.1.0-5.el5.noarch.rpm
rpm -ihv libxml2-2.6.26-2.1.2.8.i386.rpm
rpm -ihv yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm
rpm -ihv yum-3.2.22-20.el5.centos.noarch.rpm yum-fastestmirror-1.1.16-13.el5.centos.noarch.rpm


read more

VPSでのhttpd.conf設定

php_admin_flag safe_mode Off
php_admin_value open_basedir none

include や require を 制限なくni利用するため

read more

VPSでのhttpd.conf設定

php_admin_flag safe_mode Off
php_admin_value open_basedir none

include や require を 制限なくni利用するため

read more

マイティ専用サーバー 初期設定例

PHPをもっと使えるように
# yum install php-devel
# yum install php-pear

cronolog インストール
# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
# tar xvzf cronolog-1.6.2.tar.gz
# cd cronolog-1.6.2
# ./configure
# make
# make install

eaccelerator インストール
# wget http://bart.eaccelerator.net/source/0.9.6/eaccelerator-0.9.6.tar.bz2
# tar xvjf eaccelerator-0.9.6.tar.bz2
# cd eaccelerator-0.9.6
# phpize
# phpize
# which php-config
# ./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config
# make
# make install

php.ini に記述する
[eaccelerator]
zend_extension="/usr/lib/php/modules/eaccelerator.so"
eaccelerator.shm_size = "32"
eaccelerator.cache_dir = "/home/redadmin/php/cache/eaccelerator"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.check_mtime = "1"
eaccelerator.debug = "0"
eaccelerator.filter = ""
eaccelerator.shm_max = "0"
eaccelerator.shm_ttl = "0"
eaccelerator.shm_prune_period = "0"
eaccelerator.shm_only = "0"
eaccelerator.compress = "1"
eaccelerator.compress_level = "9"
eaccelerator.keys = "shm_and_disk"
eaccelerator.sessions = "shm_and_disk"
eaccelerator.content = "shm_and_disk"

webalizer インストール
画像ライブラリを先にインストールする
# yum install libpng*
# yum install libjpeg*
# yum install libgd*
# yum install gd-devel
# wget ftp://ftp.mrunix.net/pub/webalizer/webalizer-2.21-02-src.tar.Z
# tar xvzf webalizer-2.21-02-src.tar.Z
# cd webalizer-2.21-02
# ./configure --with-language=japanese --enable-dns
# make
# make install

cron 設定
# vi /etc/cron.dialy/01webalizer
/usr/local/bin/webalizer -Q -c /home/httpd/vhosts/xxxxxxxxx/conf/xxxxxxxxxxxx.conf /var/log/httpd/xxxxxxxxxxxxxxx/`date -d 'yesterday' +%Y/%m`/access_log > /dev/null 2>&1

imagick インストール
ライブラリのエラーがでるのでまずこれをインストールする
# cd /usr/local/src/
# wget http://sourceforge.net/projects/re2c/files/re2c/0.13.5/re2c-0.13.5.tar.gz/download
# tar xvzf re2c-0.13.5.tar.gz
# makcd re2c-0.13.5
# ./configure
# make
# make install
# yum -y install ImageMagick-devel
# pecl install imagick

php.iniに記述
extension=imagick.so

Basic認証
# htpasswd -c /home/httpd/vhosts/xxxxxx/conf/.htpasswd xxxxx
password : xxxxxxxxx

.htacess 書式

AuthType Basic
AuthUserFile /home/httpd/vhosts/xxxxxxx/conf/.htpasswd
AuthGroupFile /dev/null
AuthName "Enter password"
Require valid-user

ntpd 時刻合わせ
# /usr/sbin/ntpdate -s ntp.kuins.kyoto-u.ac.jp
# date
# vi /etc/crontab

cron に記述する
# ntpd
0 5 * * * root /usr/sbin/ntpdate -s ntp.kuins.kyoto-u.ac.jp > /dev/null 2>&1

yumの自動更新を停止する
/etc/init.d/yum-updatesd stop

read more

Perl インストールされているモジュールの一覧

ロリポップではこうなった
ここをクリック

#!/usr/bin/perl
use strict;
use CGI;
my $q = CGI->new;
my @modules = ();
foreach my $base_dir ( @INC ) {
 my @dir = ( undef );
 while ( @dir ) {
  my $dir = pop @dir;
  my $open = $base_dir;
  $dir and $open .= "/$dir";
  opendir ( DIR, $open );
  my @object = grep { !/^\./ } readdir ( DIR );
  closedir ( DIR );
  push @dir, map { "$dir/$_" } grep { -d "$base_dir/$dir/$_" } @object;
  push @modules, map { "$dir/$_" } grep { /\.pm$/ } @object;
 }
}
map { s/^\/// } @modules;
my %modules = map { $_=>1 } @modules;
@modules = sort keys %modules;
my $modules = {};
foreach ( @modules ) {
 my @temp = split /\//;
 my $eval = '$modules->'.join('->',map{ '{"'.$_.'"}' }@temp).'= 1;';
 eval $eval;
}
print $q->header;
print $q->start_html(-title=>'modules in this Perl.');
print hashref2list($modules);
print $q->end_html;

sub hashref2list {
 my $hashref = shift;
 my $parent = shift;
 my @keys = keys %{$hashref};
 my @file = ();
 my @dir = ();
 foreach ( @keys ) {
  if ( ref $hashref->{$_} ) {
   push @dir, $_;
  } else {
   push @file, $_;
  }
 }
 @dir = sort @dir;
 map { s/\.pm$// } @file;
 @file = sort @file;
 return $q->ul(
  $q->li([map { "$parent$_" } @file]),
  $q->li([map { $_.'::'.hashref2list($hashref->{$_}, $parent.$_.'::') } @dir])
 );
}
exit(0);

read more

MTインストール Image::Magick

某社の専用サーバーにMT 3.2 を入れようとしたところ
Image::Magick がないといわれてCPANでのインストールもアーカイブからのビルドも失敗したので
ImageMagick のインストールから行いました。

[root@www ImageMagick-6.1.8]# make
cd . && /bin/sh /usr/local/src/ImageMagick-6.1.8/missing --run autoconf
configure.ac:15: error: Autoconf version 2.59 or higher is required
configure.ac:15: the top level
autom4te: /usr/bin/m4 failed with exit status: 1
make: *** [configure] エラー 1

こんな風になってしまうのでautoconfのインストールから行います
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
tar xvzf autoconf-2.60.tar.gz
cd autoconf-2.60
./configure --prefix=/usr
make
make check
make install

wget http://www.ijg.org/files/jpegsrc.v6b.tar.gz
tar xvzf jpegsrc.v6b.tar.gz
./configure
make
make install

unzip ImageMagick-6.1.8-7.zip
cd ImageMagick-6.1.8
./configure
make
make install

tar xvzf PerlMagick-6.24.tar.gz
cd PerlMagick-6.24
perl Makefile.PL
ls
make
make install

read more

レンタルサーバー の データ制限

http://www.heteml.jp/ で運営しているサイト http://yourvideo.heteml.jp/ で
画面が正常に表示されなくなってこんなメッセージが出た。

Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 42 bytes) in /usr/local/php4/php/DB/mysql.php on line 372

MySQLのデータを一掃したら
正常に表示されるようになりました。
大きなサイトを運営するときはやっぱり専用サーバーにしないとね。

read more

Recent entry

Search

Tag Cloud

Page Top