PHPのテスト環境を作るためにXamppをVistaにインストールしようとしました。ですが、私の知識では何もかも終わりました。
誰か助けてください。

●やったこと
[準備]
ウイルス対策ソフト→オフにしました。
ポート80番→タスクマネージャ-[サービス]-[PID]から確認。未使用でした。
ユーザアカウント→管理者権限ですが・・

[インストール]
http://www.apachefriends.org/en/xampp-windows.htmlから「XAMPP Windows 1.7.1」をインストーラでDLしました。
フォルダ→C:\xampp(programfiles内だと権限が狭まってうまく動作しないようなので、Cドライブ直下にインストール。)
※インストールする時に表示されるチェックは外したままです。

[Xamppの動作確認]
Apacheを起動→「Apacheの起動中にエラーが発生しました[-1]」エラーで起動できませんでした。
MySQLを起動→なぜか動作しました(前に入れた時は動かなかったのに…何で動いた???)

[Apacheが動かないので色々やりました]
php5st.dllをSystem32フォルダにコピー ←よくわかりません。
php.ini-distファイルをCドライブ直下に移動 ←よくわかりません。本当は.ini-dist→.iniと拡張子を変更したかったんですけど、iniファイルの拡張子が表示されないので[名前の変更]から修正できませんでした。
※追記 方法を検索して修正できるように設定を変更しました。
[フォルダ]^[整理]-[詳細] 「登録している拡張子を表示しない」のチェック外す

参考ページ
http://mishuku.net/archives/2008/03/vistaxampp.php
http://sumidagawa.sblo.jp/article/24954718.html ←インストール方法
http://tokyo.atso-net.jp/index.php?UID=1209685679 ←インストール後のセキュリティ設定
http://oshiete1.goo.ne.jp/qa3704404.html ←私の知識ではよくわからないが一応追加

このQ&Aに関連する最新のQ&A

A 回答 (2件)

考えられる理由としては。



・IISが入ってる。
・Skypeが入ってる。
・XAMPP Control Panelが管理者を管理者モードで起動していない。
・ファイアウォールに登録してないためはねられている。
・Apacheのサービスをインストールしてない。
・McAffeeウイルススキャンソフトをインストールしている。

ぐらいか。このへんを一通りチェックしてみる。
    • good
    • 0
この回答へのお礼

個別にインストールすることにしました。
回答ありがとうございました。

お礼日時:2009/05/19 19:54

でもちろん、xampp-portcheckでポートチェックはしているよね?

    • good
    • 0
この回答へのお礼

80番のチェックはしましたがxampp-portcheckはやり方がわからないのでしていません。
個別にインストールすることにしました。
回答ありがとうございました。

お礼日時:2009/05/19 19:55

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QXAMPP設定後PHPのソースファイルはどこに?

はじめて、PHPを学習しています。XAMPPをインストールしてXAMPPのApacheとMySqlは正常に起動できているようですが、PHPのソースファイルをどこのフォルダに入れてどうやって動かすかわかりません。どなたかわかりますか。

Aベストアンサー

XAMPP は Windows 用で、XAMPP をインストールしたパソコン上で
Webブラウザを起動し、動作確認を行うものと想定します。

XAMPP を C:\xampp にインストールしていれば、
C:\xampp\htdocs の下が公開されます。

C:\xampp\htdocs\test.php にPHPのソースファイルを置けば、
http://localhost/test.php でアクセスできます。

C:\xampp\htdocs の下に hoge フォルダを作成し、
C:\xampp\htdocs\hoge\test.php に置けば、
http://localhost/hoge/test.php でアクセスできます。


XAMPPをインストールしたのとは別のパソコンからアクセスする場合は、
localhost のところを、「XAMPPをインストールしたパソコンのIPアドレス」に
変えてください。

Q[quote][quote]内容[/quote]

[quote][quote][quote]内容[/quote][/quote][/quote]


掲示板で、返信をしようとすると、書込欄が、[quote]内容[/quote]となります。
さらに返信ををしようとすると、書込欄が、[quote][quote]内容[/quote][/quote]となります。
さらに返信をしようとすると、書込欄が、[quote][quote][quote]内容[/quote][/quote][/quote]となります。

3つぐらいつくと、表の表示自体にも、[quote]内容[/quote]と現れてしまいます。

<質問>
・返信を重ねる場合、普通はどのように実装するのでしょうか?
・返信の返信は、[quote][quote]内容[/quote][/quote]タグの書きかたでいいのでしょうか?
・[quote]は必要なのでしょうか?

実際に、設置されるhtmlタグは、
<blockquote>内容</blockquote>なのですが、入れ子になってもいいのでしょうか?

いっそ、このタグを省いてもよいのでしょうか?

[quote][quote][quote]内容[/quote][/quote][/quote]


掲示板で、返信をしようとすると、書込欄が、[quote]内容[/quote]となります。
さらに返信ををしようとすると、書込欄が、[quote][quote]内容[/quote][/quote]となります。
さらに返信をしようとすると、書込欄が、[quote][quote][quote]内容[/quote][/quote][/quote]となります。

3つぐらいつくと、表の表示自体にも、[quote]内容[/quote]と現れてしまいます。

<質問>
・返信を重ねる場合、普通はどのように実装するのでしょうか?
・返信の返信は、[qu...続きを読む

Aベストアンサー

[quote]はいわゆるBBコードだと思います。返信元記事を明示するためのものです。実装(実際にhtmlとして出力するソース)はblockquote要素を使うことが多いです(表示の詳細はCSSで設定する)。

http://ja.wikipedia.org/wiki/BB%E3%82%B3%E3%83%BC%E3%83%89

ブロックレベル要素なので入れ子になるのはかまいませんが、中身がなにもない状態での入れ子は不自然ですので、そのあたりは工夫してください。

別に[quote]という文字列に固定というわけではありませんので自分で好きなように決めていいです。とはいえ、あまり突拍子もない文字列を使うのは感心しませんけどね(苦笑

#もちろん「使う・使わない」も含めて作成者の判断です。お好きなようにどうぞ。

Qwindows環境でxamppのphpでunixパス設定

phpソース内で include(/www/aaa/test.php); がそもそもありまして、そのソースを改造することなく
Windowsのローカル環境で(xamppの最新版を使用)インストールしたいです。
WindowsではUnixのパス(/は最も上位のフォルダからのパス)は理解出来ないと知りまして、windows用に include(\www\aaa\test.php); に改めても、引き続き同じエラーが発生し、⇒Warning: include( est est.php)その上、testの文字"t"が消えて、個人的に混乱しています。phpソースに変更を加えない方法で、Windowsローカル環境下で、apacheの設定やphpの設定などを行う方法はあるのでしょうか?
有識者の方ご指導よろしくお願いいたします。

Aベストアンサー

>include(\www\aaa\test.php);
予測ですが、
include("\www\aaa\test.php");
こう書いてたりしませんでしょうか。

PHPに限らずですが、ダブルクウォートに括られた文字列は「\」でエスケープされます。
上記場合ですと\w,\a,\tがそれで一文字と判別されます。
Warning: include( est est.php)
となるのは\tがタブ文字と判別されてるからでしょう。

解決策としては
include('\www\aaa\test.php');
とするか、
include("\\www\\aaa\\test.php");
と\自体をエスケープすればよいです。

Q[0];[1];ですが、配列の要素か添え字に該当する部分の[0]と[1]ですが

以下のプログラムで教えていただけないでしょうか
<!DOCTYPE html>
<html><head>
<title>P222 Sample7-7 小計を求める関数</title>
</head><body><?php
$product = array(array(100,5),array(20,16),array(25,40));
?>
<table border="2">
<tr bgcolor="#AAAAAA">
<th>単価</th>
<th>個数</th>
<th>小計</th>
</tr>
<?php
for($i=0; $i<3; $i++){
$p = $product[$i][0];
$n = $product[$i][1];
$t = total($p, $n);
print "<tr><td>{$p}円</td><td>{$n}個</td><td>{$t}円</td></tr>\n";
}
function total($pr,$n)
{
return $pr*$n;
}
?>
</table></body></html>
-------------------------------------------------------------------------------------------
以上ですが、
for($i=0; $i<3; $i++){
$p = $product[$i][0];
$n = $product[$i][1];
 の部分の[0];[1];ですが、配列の”要素”か”添え字”に該当する部分の[0]と[1]ですが
 どんな働きがあるのでしょうか?
 以上よろしくお願いいたします。

以下のプログラムで教えていただけないでしょうか
<!DOCTYPE html>
<html><head>
<title>P222 Sample7-7 小計を求める関数</title>
</head><body><?php
$product = array(array(100,5),array(20,16),array(25,40));
?>
<table border="2">
<tr bgcolor="#AAAAAA">
<th>単価</th>
<th>個数</th>
<th>小計</th>
</tr>
<?php
for($i=0; $i<3; $i++){
$p = $product[$i][0];
$n = $product[$i][1];
$t = total($p, $n);
print "<tr><td>{$p}円</td><td>{$n}個</td><td>{$t}円</td></tr>\n";
}
...続きを読む

Aベストアンサー

> $product = array(array(100,5),array(20,16),array(25,40));
これは、視覚的に表すと、以下のようなことです。

$product
 [0]
  [0] ⇒ 100
  [1] ⇒ 5
 [1]
  [0] ⇒ 20
  [1] ⇒ 16
 [2]
  [0] ⇒ 25
  [1] ⇒ 40

二次元配列なので、添字は2つ指定して、初めて目的の値を得ることができます。
[0]、[1]という指定は、おまじないでもなんでもなく、目的の値を得るための添字になります。

つまり、
$product[0][0]は100
$product[0][1]は5
$product[1][0]は20
$product[1][1]は16
$product[2][0]は25
$product[2][1]は40
ということになります。

QxamppでPHPを実行

PHP初心者です。

Xampp(バージョンは1.6.8)をインストールして、
PHPファイルを実行しようとすると、
「Fatal error: Undefined class name 'loggermanager'」
というエラーが出てしまいます。

libフォルダに「LoggerManager.php」は入っているのですが…

実行しようとしているファイルは

C:\xampp\htdocs\ディレクトリ1\ディレクトリ2\ディレクトリ3\ディレクトリ4\ディレクトリ5

の配下にあり、「LoggerManager.php」は

C:\xampp\htdocs\test\support_tool_pon\lib\log4php

の配下にあります。

原因に心当たりがある方、教えてください。

Aベストアンサー

1.パスが通ってない?

実行スクリプトでオブジェクト生成するクラスの記述のあるファイルへのパスは通ってますか?
実行スクリプト内のloggermanagerが出現する直前で
echo get_include_path();
exit;

などして
C:\xampp\htdocs\test\support_tool_pon\lib\log4php
へ通じているパスが記述されているか確認してみてください。

パスを設定するにはスクリプト上でset_include_pathを使うか,
php.iniのinclude_pathの設定を見直してください。
また,この際に設定するiniファイルについてはhttpd.confで指定されているものかどうか確認してください。
windowsの場合だと,c:\xampp\php\php.ini などではなく c:\windows\php.ini などを読んでいたりします(パスは架空です)ので
phpinfo();などで,実際に読み込まれているphp.iniがどこにあるものなのかも確認して,その内容(include_path)をあらためてください。

インクルードパス
include path
get_include_path
set_include_path
などで検索してみてください。


2.クラスの参照の問題?
確か1.6.8はPHP4と5切り替え可能なバージョンですよね?
どちらで実行されてますでしょうか。
お使いのlog4phpの動作に必須環境など確認してみてください。
この切り替えで上手く行きませんか?

1.パスが通ってない?

実行スクリプトでオブジェクト生成するクラスの記述のあるファイルへのパスは通ってますか?
実行スクリプト内のloggermanagerが出現する直前で
echo get_include_path();
exit;

などして
C:\xampp\htdocs\test\support_tool_pon\lib\log4php
へ通じているパスが記述されているか確認してみてください。

パスを設定するにはスクリプト上でset_include_pathを使うか,
php.iniのinclude_pathの設定を見直してください。
また,この際に設定するiniファイルについてはhttpd.confで指定さ...続きを読む

Qなぜかphp.ini-distがコピーできません。

これからPHPをやろうしているものです。
今、phpをダウンロードして解凍後設定しているのですが、設定の際にphp.ini-distをphp.iniにしてc\windowsに置くと参考書に書いてあったのですが、何回やっても、php.ini-distのファイル名をphp.iniに変更できず置くこともできません。また、php5ts.dllもc\windows\system32にコピーすることもできません。
操作は以下のとおりです。
1.php-5.0.1-Win32を適当なところにダウンロード(デスクトップ上)
2.php-5.0.1-Win32をc\phpに解凍
3.c\phpの中のphp.ini-dist→php.iniに変更できない
4.試しにphp.ini-dist自体をc\windowsへコピー→できず
5.php5ts.dllをc\windows\system32にコピーできず
※OS:WIN XP home
※市販のPCノート
お手数ですが、解決策と解決手法を教えていただけませんでしょうか。よろしくお願いします。

Aベストアンサー

もしや、すでにApache2をインストールされているのではないでしょうか。普通にApache2をインストールすると、WindowsでApache2が自動起動のサービスとして登録されます。PHPはApache2のモジュールとして動作しているので、この状態ですと、phpの関連ファイルはApacheによって参照されており、ゆえにPHP関連ファイルを書き換えることは出来ません。
(Windowsを再起動しても、Apache2が一緒に自動起動してしまうので、この現象は直りません。)
よって、Apache2をいったん終了すれば解決すると思います。いかがでしょうか?

(ちなみにApache2の止め方は、Windowsの画面下のタスクバー右に赤い羽根のアイコンがあると思いますが、ここをクリックして、「Stop」とやれば止まります。)

Qxampp sendmail 設定

PHP sendmail 設定について
すみません、うまく行かないのでご存知方いましたら
おしえてください。
sendmailの設定です。。。
環境・php5、xampp1.7、sendmail(xmappに付随)
まずはテストでyahooのフリーメールで試してみたいです。
注)まず、契約してる、プロバイダーのSMTPで試すと言う返答はなしでお願いします。

php.ini
SMTP = smtp.mail.yahoo.co.jp
smtp_port=587

; For Win32 only.
sendmail_from = tes@example.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = "C:\xampp\sendmail\sendmail.exe -t"


sendmail.ini
smtp_server=smtp.mail.yahoo.co.jp
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
pop3_server=pop.mail.yahoo.co.jp

pop3_username=usernm@
pop3_password=pass
auth_username=usernm@(実際ログインできるnm)
auth_password=pass(実際ログインできるpw)

上記で設定しましたが、うまくいきません。。エラーMSGは得になしえです。

sendmail.iniなしで直接、php.iniに記載するし
Mercury起動すると、

php.ini
SMTP = smtp.mail.yahoo.co.jp
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
pop3_server=pop.mail.yahoo.co.jp
pop3_username=usernm@
pop3_password=pass
auth_username=usernm@(実際ログインできるnm)
auth_password=pass(実際ログインできるPW)

; For Win32 only.
sendmail_from = tes@example.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path = "C:\xampp\sendmail\sendmail.exe -t"

mb_send_mail() [function.mb-send-mail]: S
MTP server response: 530 Sorry,
please use SMTP-AUTH instead -
for help go to http://help.yahoo.co.jp/help/jp/mail/whatisymail/whatisymail-51.htmlとでます。

解決策、ご存知方いましたら、教えていただけないでしょうか?

PHP sendmail 設定について
すみません、うまく行かないのでご存知方いましたら
おしえてください。
sendmailの設定です。。。
環境・php5、xampp1.7、sendmail(xmappに付随)
まずはテストでyahooのフリーメールで試してみたいです。
注)まず、契約してる、プロバイダーのSMTPで試すと言う返答はなしでお願いします。

php.ini
SMTP = smtp.mail.yahoo.co.jp
smtp_port=587

; For Win32 only.
sendmail_from = tes@example.com

; For Unix only. You may supply arguments as well (default: "...続きを読む

Aベストアンサー

最後の一文をよく読んで見てください。
SMTP-AUTHが必要となってます。

下記サイトは、SMTP-AUTHの概要です。
http://e-words.jp/w/SMTP20Authentication.html

私自身、SMTP-AUTHを通してからメールを送信するというものは組んだことがないのですが、
下記サイトのライブラリの「Qdmail」は、それを行うことが出来ます。
http://hal456.net/qdmail/smtp

このライブラリは日本語メールの送信など、簡単に行うことが出来るライブラリなので、
利用してみてはいかがでしょうか。

勉強のために、ということであれば、Qdmailのソースを読んで、どのように実現しているか
調べてみるのも良いかもしれません。

Q$_SERVER["HTTP_HOST"]と$_SERVER["SERVER_NAME"]の違い(というか意味合い)は?

phpのバージョンは、5.1.6で、OSのバージョンはCentOS4.4です。

お聞きしたいのですが、
$_SERVER["HTTP_HOST"]と$_SERVER["SERVER_NAME"]の違い(というか意味合い)はなんでしょうか?

phpinfoでみても、同じの場合したことがみたことがないもので。

ご存じの方いらっしゃいましたら、お教えいただければ幸いです。

よろしくお願いいたします。

Aベストアンサー

$_SERVERはサーバーの環境変数やPHPの情報を保存した配列です。
$_SERVERのうち、環境変数はgetenv()でも取得できます。

$_SERVER["SERVER_NAME"]で取得できる名前は
Apacheの場合はhttpd.confで、
UseCanonicalNameがOnになっているときに、ServerNameで指定された値が使われます。
UseCanonicalNameがOffになっていると、ドメイン名やIPアドレスになります。
UseCanonicalNameがOffになっていて、http://127.0.0.1:8001/のようにポート指定でアクセスした場合は、ポート番号は除かれます。

HTTP_HOSTはHTTPでアクセスしたときのホスト名、つまりドメイン名+ポート番号がそれに当たります。
(厳密には違うかも知れませんが、、、)
http://www.ietf.org/rfc/rfc2616.txt

VirtualHostを使ってポート指定でアクセスすると違いが出ますが、
デフォルトでUseCanonicalNameはOffになっていますし、ホスティングサービスではOnにする理由もありません。
http://httpd.apache.org/docs/2.0/ja/mod/core.html#usecanonicalname
(「これが有用な場合の例は、」の段落参照。主にイントラネット向け?)

、、、と書くのはいいとして、私自身、UseCanonicalNameやホスト名の意味や使い方をわかっていません。
こうすれば違いが出るということだけですが、
ご参考まで。

$_SERVERはサーバーの環境変数やPHPの情報を保存した配列です。
$_SERVERのうち、環境変数はgetenv()でも取得できます。

$_SERVER["SERVER_NAME"]で取得できる名前は
Apacheの場合はhttpd.confで、
UseCanonicalNameがOnになっているときに、ServerNameで指定された値が使われます。
UseCanonicalNameがOffになっていると、ドメイン名やIPアドレスになります。
UseCanonicalNameがOffになっていて、http://127.0.0.1:8001/のようにポート指定でアクセスした場合は、ポート番号は除かれます。

HTTP_HOST...続きを読む

Qxamppでメール送信の設定

すみません。
XAMPPでメール送信の設定を行いたいのですが、設定方法が分かりません。
いろいろ調べたのですが、バージョンが違っているのか?良く分かりません。
php.iniのどの場所を設定したらいいのでしょうか?
教えてください。
xamppは1.72の最新です。
よろしくお願いします。

Aベストアンサー

>いろいろ調べたのですが、バージョンが違っているのか?良く分かりません。
どこがどうわからない。
そもそもXAMPPというよりphp.iniの書き方なんてそんなに極端な仕様変更されていませんけど

Q[wordpress]外部RSSを「文字数制限」してリストで取得[php]

初めまして。
wordpress、php初心者です。

タイトル通り、外部のRSSを自分のサイトで、
リスト表示させようと思っています。

------------
<h1><?php _e('Headlines from Yahoo ITmedia News'); ?></h1>
<?php // Get RSS Feed(s)
include_once(ABSPATH . WPINC . '/rss.php');
$rss = fetch_rss('http://headlines.yahoo.co.jp/rss/itmedia_n.xml');
$maxitems = 5;
$items = array_slice($rss->items, 0, $maxitems);
?>
<ul>
<?php if (empty($items)) echo '<li>No items</li>';
else
foreach ( $items as $item ) : ?>
<li><a href='<?php echo $item['link']; ?>'
title='<?php echo $item['title']; ?>'>
<?php echo $item['title']; ?>
</a></li>
<?php endforeach; ?>
</ul>
------------

上記のソースで表示はひとまずできました。

あと、これを文字数制限(たとえば10文字以上は「…」)で表示
としたいのですが、どうしたらいいのでしょうか?

------------

<?php
$title= mb_substr($post->post_title,0,10);
echo '<h1>'.$title.'…</h1>';
?>
------------

上記の「mb_substr(」を組み合わせればできそうなのですが、
理解不足な分、うまくいきません。
誰が、教えてください。よろしくお願いします。

初めまして。
wordpress、php初心者です。

タイトル通り、外部のRSSを自分のサイトで、
リスト表示させようと思っています。

------------
<h1><?php _e('Headlines from Yahoo ITmedia News'); ?></h1>
<?php // Get RSS Feed(s)
include_once(ABSPATH . WPINC . '/rss.php');
$rss = fetch_rss('http://headlines.yahoo.co.jp/rss/itmedia_n.xml');
$maxitems = 5;
$items = array_slice($rss->items, 0, $maxitems);
?>
<ul>
<?php if (empty($items)) echo '<li>No items</li>';
else
fore...続きを読む

Aベストアンサー

WordPressについては使用したことがないので分かりませんが、PHP側の問題はほとんど解決している状態だと思います。
とりあえずmb_substr関数についてマニュアルを熟読されてはいかがでしょうか。
http://jp2.php.net/manual/ja/function.mb-substr.php

所望の動作を実現するにはmb_substr関数よりもmb_strimwidth関数の方がより向いているかもしれません。
http://jp2.php.net/manual/ja/function.mb-strimwidth.php


人気Q&Aランキング