さくらインターネット スタンダードプランにてリダイレクト処理でエラーが出てきます。
以下がエラーが発生するコードです。
■エラーが出るコード
header(“Location: /hoge.php”);
■エラー内容
Warning: Cannot modify header information – headers already sent by (output started at /home/(ユーザー名)/www/index.php:1) in /home/(ユーザー名)/www/index.php on line (行数)
ヘッダー情報に追加できません?
すでに送ってるだ・・・と?
結果、解決方法は以下の通り。
1.さくらインターネットコントロールパネルにログイン
2.PHP設定の編集をクリック
3.php.ini 設定ファイル編集画面で「output_buffering = On」を入力し「保存する」をクリック
4.エラーが出ていた所が正常にリダイレクト処理を行っているか確認
頼むよまじで!
Category: Webサーバ | Comments (2) | トラックバック (0)
Windows Server 2008 (64bit) のインストール後に行う初期設定についてです。
備忘録です。
■OSインストール
インストール方法はググれば色々出てきますので割愛。
Cドライブ(システム)は80GBも取れば足りなくなることはないだろう。
残りはDドライブに割り付け。
■Administratorを別名に変更
仮に外部者がサーバにアクセス出来た場合にユーザー名とパスワードの組合せを推測することを困難にするために行います。
1.[スタート]-[管理ツール]-[コンピュータの管理]-[ローカルユーザーとグループ]-[ユーザー]から、「administrator」を右クリックして「名前の変更」を選択し、適当な名前に変更。
■リモートデスクトップに同ユーザーで2人までログインできるようにする
デフォルトだと同ユーザーでリモートデスクトップにアクセスしようとすると、1人までしか入れないようになっています。
それを2人までログインできるようにする設定です。(1人と2人じゃ大違い)
1.[スタート]-[ファイル名を指定して実行]-「gpedit.msc」と入力
2.ローカル グループ ポリシー エディタ画面が表示されたら、左メニューの[コンピュータの構成]-[管理用テンプレート]-[Windows コンポーネント]-[ターミナル サービス]-[ターミナル サーバー]-[接続]-[ターミナル サービス ユーザーに対してリモート セッションを1つに制限する]を「未構成」から「無効」に変更。
■Windows Updateの設定
運用中に勝手にWindows Updateを行ってしまい、再起動までされると困りますよね。
管理者が自分の意志でインストールを行うようにした方がいいと思います。
1.[スタート]-[コントロールパネル]-[Windows Update]-左メニュー[設定の変更]
2.「更新プログラムをダウンロードするが、インストールを行うかどうかは選択する」を選択し、「推奨される更新プログラムについてもダウンロード、インストール、および通知する」のチェックを外す。
■全てのファイルの拡張子を表示させる
何言ってんの?JK、という人もいるでしょう。
これをしてないばっかりにはまってしまったんですよw(index.cgiと思っていたが、実際にはindex.cgi.cgiみたいにw)
1.適当なフォルダを開く。
2.[ツール]-[フォルダオプション]-[表示]タブ-「登録されている拡張子は表示しない」のチェックを外す。
以下はWebサーバ用の設定になります。
何言ってんの?こうやった方がいいよ、という人がいたらコメント残していただけるとありがたいです。
■IIS
自分の環境に合わせて役割の追加からIISをインストールした後には少し機能を追加しましょう。
1.Administration Pack for IIS 7.0をダウンロードする。(今回はx64版を選択した)
・Administration Pack for IIS 7.0 32bit用
・Administration Pack for IIS 7.0 64bit用
2.普通にインストールしていく。
■IISの初期設定
人によってはしなくてもいいところもありますが、今回はこうしました。
1.[スタート]-[管理ツール]-[インターネット インフォメーション サービス (IIS) マネージャ]
2.左メニュー[サーバ名(サーバ名¥ユーザー名)]-[アプリケーション プール]-右メニュー[アプリケーション プールの規定値の設定]-[32 ビット アプリケーションの有効化]を「False」から「True」に変更。
(32bitでしか動かないミドルウェアが多いので全サイトに適用します)
3.左メニュー[サーバ名(サーバ名¥ユーザー名)]-[ASP]-[デバッグ プロパティ]-[ブラウザへのエラー送信]を「False」から「True」に変更。
(ASPのエラーメッセージが常に「An error occurred on the server when processing the URL…」となり、何のエラーか分からないため)
■ASPのファイルアップロードの容量制限を変更
デフォルト200KBは少ないんじゃない?
200KB以上をアップロードしようとすると、Request.BinaryReadメソッドが「操作は許可されません」とエラーとなる。
1.[スタート]-[管理ツール]-[インターネット インフォメーション サービス (IIS) マネージャ]
2.左メニュー[サーバ名(サーバ名¥ユーザー名)]-[ASP]-[最大要求エンティティ ボディ制限]を「200000」から好きな容量に変更。
■SMTPサーバインストール
Webサーバとして利用するなら恐らく必要になるのではないでしょうか。
機能の追加からSMTPサーバをインストールした後の手順です。
1.[スタート]-[管理ツール]-[インターネット インフォメーション サービス (IIS) 6.0 マネージャ]
2.左メニュー[SMTP Virtual Server #1]-右クリック[プロパティ]
3.[全般]タブで[ログ収集を有効にする]にチェックを入れ「プロパティ」をクリック。
4.[全般]タブでログファイルディレクトリを好きなディレクトリに変更。
5.[詳細設定]タブでお好みの拡張ログオプションを選択。
6.[アクセス]タブ-[接続制御]-[接続]-[以下のリストに含まれるコンピュータのみ]を選択し、「追加」をクリック。
7.コンピュータウィンドウ画面で「1台のコンピュータ」を選択し、「追加」をクリック。
8.IPアドレスに「127.0.0.1」を入力し「OK」をクリック。
9.接続画面で「OK」をクリック。
10.[アクセス]タブ-[中継の制限]-[中継]-[以下のリストに含まれるコンピュータのみ]を選択し、「追加」をクリック。
11.コンピュータウィンドウ画面で「1台のコンピュータ」を選択し、「追加」をクリック。
12.IPアドレスに「127.0.0.1」を入力し「OK」をクリック。
13.中継の制限画面で「OK」をクリック。
14.[メッセージ]タブで配信不能レポートのコピーの送信先にメールアドレスを入力し「OK」をクリック。
■SMTPサーバ自動起動設定
恐らくデフォルトだと、再起動をかけるとSMTPサーバが停止した状態になります。
都度起動すればOKなのですが、忘れてしまいそうなので自動で起動するような設定にします。
1.[スタート]-[管理ツール]-[コンピュータの管理]
2.[サービスとアプリケーション]-[サービス]-[Simple Mail Transfer Protocol (SMTP)]の「プロパティ」
3.スタートアップの種類を「手動」から「自動」に変更。
■CDO.Message
CDO.Messageを利用してメールを送る方法です。
デフォルトのままだと「アクセスが拒否されました。(800700005)」とエラーになります。
1.「C:¥inetpub¥mailroot」に「NETWORK SERVICE」のユーザー追加+変更権限追加。
(メールのスプールが作られるため)
■CDONTS.NewMail
あんまりCDONTS.NewMailを利用してメールは送ることはないのかも。
一応記述。
1.「cdonts.dll」をダウンロード。
2.ダウンロードした「cdonts.dll」を「C:¥Windows¥SysWOW64¥cdonts.dll」に上書き。(64bit OSの場合)
3.コマンドプロンプトから「regsvr32 C:¥WindowsSysWOW64¥cdonts.dll」とコマンド入力し、登録を行う。
4.実行後「…は成功しました。」と表示されることを確認。
5.「C:¥inetpub¥mailroot」にサイト別の匿名ユーザー(デフォルトだと「Users」なのか?)を追加後、変更権限を付ける。
■BASP21インストール
1.「BASP21-2003-0211.exe (1.44MB)」をダウンロード。
2.「BASP21-2003-0211.exe」を実行。
3.使用許諾契約画面で「はい」をクリック。
4.InstallShield Wizardの完了画面で「完了」をクリック。
5.同ページから「Bsmtp20070629-587.lzh」もダウンロードし解凍する。(解凍できる環境に落とす方がいいかも)
6.解凍した中身を「C:¥Windows¥SysWOW64」に上書きする。(dllファイルとexeファイルの2つ)
■ActivePerlインストール
1.Windows MSWin32 x86をダウンロード。
(64bit環境でもx86版にする。更に古い5.8系を選択 : ActivePerl 5.8.9.826 Windows (x86))
2.ダウンロードしたファイル(ActivePerl-5.8.9.826-MSWin32-x86-290470.msi)を実行しインストール。
(インストールオプションで「Documentation」、「Examples」はインストールしない)
3.Choose Setup Options画面でチェックを全て外す。
4.[スタート]-[管理ツール]-[インターネット インフォメーション サービス (IIS) マネージャ]
5.左メニュー[サーバ名(サーバ名¥ユーザー名)]-[ハンドラ マッピング]
6.右メニューの「モジュールマップの追加」をクリックし、以下内容を入力。
要求パス : *.cgi
モジュール : CgiModule
実行可能ファイル(オプション) : C:¥Perl¥bin¥perl.exe “%s” %s
名前 : CGI(名前は自由に)
7.「モジュール マップの追加」メッセージで「はい」をクリック。
追加があればまた書きます。
やべ、寝ようw
Category: Webサーバ | Comment (0) | トラックバック (0)