ウェブサーバーを作り直したのでメモ。

パッケージのインストール

$sudo aptitude install apache2 libapache2-mod-php5 mysql-server php5-mysql

mysqlのrootパスワードが聞かれるので入力。

Apacheの設定

セキュリティの設定とPHPの有効化の設定。

コメントをはずして、デフォルトで全てのディレクトリにローカル以外からアクセスを禁止しておく。

$sudo vi /etc/apache2/conf.d/security

 8 <Directory />
 9	AllowOverride None
10	Order Deny,Allow
11	Deny from all
12	Allow from 192.168.0.0/24 #LANのネットワーク
13 </Directory>

余計な情報をヘッダーに出力させない。

29 ServerTokens Prod

ServerSignatureをOff

40 ServerSignature Off
41 #ServerSignature On

ユーザーディレクトリでPHPが無効になっているので有効にする。

$sudo vi /etc/apache2/mods-available/php5.conf

 8 # To re-enable php in user directories comment the following lines
 9 # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
10 # prevents .htaccess files from disabling it.
11 #<IfModule mod_userdir.c>
12 #	<Directory /home/*/public_html>
13 #		php_admin_value engine Off
14 #	</Directory>
15 #</IfModule>

Onにはするな、と書いてあるようなので素直にコメントアウト。コンテンツをuserdirで動かしていたのでPHPが全部動かなくなった。これに気付かず今回サーバーを作り直した。

必要なモジュールの有効化

$sudo a2enmod <モジュール名>

無効化

$sudo a2dismod <モジュール名>

Apacheの再起動

$sudo /etc/init.d/apache2 restart (さらに…)

おすすめ


2月 18th, 2011

Posted In: ソフトウェア

タグ: , , , , , , ,

Leave a Comment

Debian 6.0(squeeze)がリリースされたのでクリーンインストールした。アップグレードしたのはローカルで使ってるサーバー(KVMのホスト)と公開用に使ってるサーバー(KVMのゲスト)の2台。覚えているうちに作業記録を残す。

ローカルサーバーは新しいHDDに移行するついでにアップグレード。GPTへのインストールや録画鯖の再構築で手間取った。録画鯖はやった記憶がほとんどなくて困った。

公開サーバーはしばらくそのまましておくつもりが、squeezeから一部パッケージを借りていたため自動アップグレードされてしまった。ダウングレードすると壊れて、完全にアップグレードするとPHPが動かなくなったので、クリーンインストールした(KVMで動いているため、ディスクイメージを戻すだけで元通り)。PHPは設定を変えないと動かなかった。

おすすめ


2月 16th, 2011

Posted In: 雑記

タグ: , , , , , ,

Leave a Comment

WordPressが使い物にならない位おかしかったので、サーバーを入れなおした。(WordPress入れなおせばいい話だが)かなり強引に推し進めた。またやる時はきっと見れないけどメモ。WordPressは未だ戻りきってない。

手順として

  1. バックアップ
  2. 仮想鯖の設置
  3. 再インストール・セットアップ

(さらに…)

おすすめ


8月 2nd, 2009

Posted In: ソフトウェア

タグ: , , , ,

Leave a Comment

PHPScriptでどうやって投稿されたか判断させようか迷ってた。簡単なことだった。判断用にフォーム変数を用意するだけ。これで解決できる。

<input type="hidden" name="submit" value="true" />

うは、クイック投稿機能とかWordpress気が利いてる。

追記:
こんなことわざわざするより送信するとき必ずある送信ボタンを使えばいい。

<input type=”submit” name=”submit” value=”送信” />

何か入ってる時点でPHP的にはtrueになる。送信されるボタンはsubmitだけだった。

おすすめ


1月 10th, 2009

Posted In: プログラミング

タグ: , ,

Leave a Comment