運営サイト/オリジナルCMS   |   ダウンロードランキング   |   お問い合わせ

PR

ログインシステム制作パック(格安の9,800円!)

ログインシステム制作パック(格安の9,800円!)

SNS や 会員制サイト の構築に利用された実績のある 「ログインシステム」 を、システム単体としてパッケージ化しました。
運営中や、新規制作のホームページ に 簡単にログイン機能 をつけることができます。

簡易認証

簡易認証

PHPからApacheの基本認証を強制的に呼び出し、簡易的な基本認証を実装します。

【ソース】

<?php
if(!isset($_SERVER['PHP_AUTH_USER'])){
  header(WWW-Authenticate: Basic realm=\”Administrator\”");
  header(”HTTP/1.0 401 Unauthorized”);
  print(”この画面の認証は認められませんでした”);
  exit();
}
else{
  if($_SERVER['PHP_AUTH_USER']==”admin” && $_SERVER['PHP_AUTH_PW']==”admin”){
    print(”この画面の認証は認められました”);
  }
  else{
    print(”この画面の認証は認められませんでした”);
  }
}
?>
 

参考になりました?

Filed under: PHP,サーバー — admin 21:40  Comments (0)

IEシステムエラー (-1072896658)

IEでシステムエラー(-1072896658)が発生

Apacheの設定ファイル(httpd.conf)の以下のように修正し、Apacheを再起動すると直る。

【修正前】
AddDefaultCharset none

【修正後】
AddDefaultCharset off

※phpの入門書などに”文字化け対策の為にAddDefaultCharset を 「none」 に指定するように書かれているが、間違いだという声もあり。。。。

 

参考になりました?

Filed under: PHP,サーバー — admin 21:37  Comments (0)

php.iniでファイルを自動取り込み

php.ini の auto_prepend_file を指定すると、ファイルを自動取り込みできる。

php.iniに
auto_prepend_file=○○○.php
と指定すると、ページを実行する前に ○○○.phpが実行される。
これにより、requireやinclude などでファイルを取り込まなくても自動で取り込める。

 

参考になりました?

Filed under: PHP,サーバー — admin 21:23  Comments (0)

文字エンコード

日本語には4つの文字エンコード系列 ( JIS、Shift_JIS、EUC-JP、UTF-8 ) があります。
※中国語や韓国語はUTF-8になります。
PHP内部文字コードがEUC-JPのとき、外部出力文字コードの設定方法を説明します。

PHPで使用する文字エンコードは以下の3種類があります。

(1)PHP内部で動作する文字コード ( 内部エンコード )
(2)PHPがブラウザに出力する文字エンコード ( HTTP出力エンコード )
(3)ブラウザから送られてくる文字エンコードの認識 ( HTTP入力エンコード )
※(1)はphpファイルだけでなく、phpファイルがインクルードしているファイル全てを指します。

■EUC-JP出力サイトを作成するには(1)~(3)を以下に設定します。
(1)EUC-JP
(2)EUC-JP
(3)自動認識

設定の方法は php.ini を書き換える方法と、.htaccess に記述する方法があります。

【1】php.ini を書き換える方法
output_buffering = Off
default_charset = EUC-JP
mbstring.language = Japanese
mbstring.encoding_translation = On
mbstring.http_input = auto
mbstring.http_output = EUC-JP
mbstring.internal_encoding = EUC-JP

【2】.htaccess に記述する方法
php_flag output_buffering = Off
php_value default_charset = EUC-JP
php_value mbstring.language = Japanese
php_flag mbstring.encoding_translation = On
php_value mbstring.http_input = auto
php_value mbstring.http_output = EUC-JP
php_value mbstring.internal_encoding = EUC-JP

■Shift_JIS出力サイトを作成するには(1)~(3)を以下に設定します。
(1)EUC-JP
(2)Shift_JIS
(3)自動認識

設定の方法は php.ini を書き換える方法と、.htaccess に記述する方法があります。

【1】php.ini を書き換える方法
output_buffering = On
output_handler = mb_output_handler
default_charset = Shift_JIS
mbstring.language = Japanese
mbstring.encoding_translation = On
mbstring.http_input = auto
mbstring.http_output = Shift_JIS
mbstring.internal_encoding = EUC-JP

【2】.htaccess に記述する方法
php_flag output_buffering = On
php_value output_handler = mb_output_handler
php_value default_charset = Shift_JIS
php_value mbstring.language = Japanese
php_flag mbstring.encoding_translation = On
php_value mbstring.http_input = auto
php_value mbstring.http_output = Shift_JIS
php_value mbstring.internal_encoding = EUC-JP

 

参考になりました?

Filed under: PHP,サーバー — admin 21:15  Comments (0)

ベーシック認証のかけかた

◆ ベーシック認証に必要なファイル ◆
1 .htaccess の内容
2 .htpasswordの内容

(注1)上記2ファイルはApachの設定ファイル
(注2)CGIへ渡されるユーザ名とパスワードは、暗号化やハッシュ化がされていない生の状態(クリアテキスト、プレーンテキスト)で送受信されるため、簡単に盗聴・改ざんされてしまうことの注意する。

◇ 内容 ◇

1 .htaccess の内容
AuthUserFile /home/xxxxxxxxx/.htpassword
AuthGroupFile /dev/null
AuthName “test01″
AuthType Basic
require valid-user
< Files ~”^.(htpasswd|htaccess)$”>
deny from all
< /Files>

2 .htpassword の内容
hogehoge:DUt90Tol/VCxE

【参考1】
パスワード生成はコチラ
http://blog.designappli.com/report/sample/php/01/

【参考2】
conf/httpd.conf の「AllowOverride」ディレクティブに「AuthConfig」があること。

 

参考になりました?

Filed under: サーバー — admin 21:00  Comments (0)

SSIの使い方

SSIを利用して、ヘッダー、フッターなど共通部分を1つのHTMLファイルに纏める

◆本体(index.shtml)
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>;
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=shift_jis”>
<title>SSIテスト</title>
</head>
<body>
<!–#include file=”header.html” –>
<p>Body</p>
<!–#include file=”footer.html” –>
</body>
</html>

◆ヘッダー(header.html)
<table border=”1″>
<tr>
<td><p>header</p></td>
</tr>
</table>

◆フッター(footer.html)
<table border=”1″>
<tr>
<td><p>footer</p></td>
</tr>
</table>

ブラウザで index.shtml を指定すると表示完了

 

参考になりました?

Filed under: サーバー — admin 20:55  Comments (0)

URLの書き換え

■URLの書き換え(Apachの設定を変更・追加する)

方法1.Apacheの設定ファイル(httpd.confなど)
→サーバー管理者向けの設定

方法2.コントロールファイル(.htaccess)を設置する
→サイト管理者向けの設定

※ここでは方法2をとる

※参考サイト(ミケネコのhtaccesリファレンス)
http://mikeneko.creator.club.ne.jp/~lab/web/htaccess/

Apacheの設定ファイルを記述した(.htaccess)を作成して、変更したいフォルダに設置する
ただし、サーバーの設定を許可されている場合に限る。

■URL書き換え設定例
http://hoge.com/ec.htmlhttp://hoge.com/ec/ec.php
http://hoge.com/ec/01/03http://hoge.com/ec/ec.php?a=01&b=03

■メリット
本ファイルの名前、場所をURLに表記しないですむ
SEO対策として、動的ページを静的ページに見せる

■必要なもの
コントロールファイルによる変更をサーバーが許可していること(FileInfo)
参考:http://www.rfs.jp/server/apache/01/02.html
mod_rewriteというApacheのモジュールが有効になっていること
※コントロールファイルにて有効にすることもできるが、ややパフォーマンスが低下する
※mod_rewriteとは、URLの内部での書きかえを可能にするモジュール

■.htaccessの記述
RewriteEngine on
RewriteRule index\.html index\.php // index.htmlでアクセスしたら、index.phpを表示
RewriteRule ([0-9a-zA-Z]+)\.html control/$1.php // ***.html は control/***.phpを表示
// .の前には \ をつける
// +は1文字以上
// $1は()で囲った中身をさす

↑これをフォルダに配置

■.htaccessの記述?
リンクの書き換えをして、静的ページ的にパラメータを渡す
内部:control/list.php?category1=**
外部:list/category1/**.html

RewriteEngine on
RewriteBase /php_adv_0706/ec/
RewriteRule index\.html index\.php
RewriteRule list/([0-9a-zA-Z]+)/([0-9a-zA-Z]+)\.html$ control/list\.php?$1=$2 [L]
RewriteRule ([0-9a-zA-Z]+)\.html$ control/$1\.php

// 予断。。。^は~で始まるという意味

http://localhost/php_adv_0706/ec/list/1/2.html でアクセスしてhttp://localhost/php_adv_0706/ec/control/list.phpファイルが表示される。

この際、相対パスがずれるので、<base>タグなどを利用して回避する

 

参考になりました?

Filed under: サーバー — admin 20:37  Comments (0)

運営サイト/オリジナルCMS   |   ダウンロードランキング   |   お問い合わせ