ホームページ >バックエンド開発 >PHPチュートリアル >Windows で Apache を使用した php 開発環境を構築する、apache_PHP チュートリアルを構築する

Windows で Apache を使用した php 開発環境を構築する、apache_PHP チュートリアルを構築する

WBOY
WBOYオリジナル
2016-07-13 09:44:25846ブラウズ

Apache で Windows 上に php 開発環境を構築する、Apache ビルド

この記事では、Apache2.2.21/PHP5.3.5/Mysql5.5.19/phpMyAdmin3.4.9 を使用して Windows2003 上で php 開発環境を構築する方法を詳しく紹介します。

ステップ 1: インストールファイルをダウンロードします

1.Apache バージョン httpd-2.2.21-win32-x86-no_ssl.msi

2. MySQL バージョン mysql-5.5.19-win32.msi

3. PHP バージョン php-5.3.5-Win32-VC6-x86.zip

4. phpMyadmin バージョン phpMyAdmin-3.4.9-all-langages.zip

ヒント:

1. 開発を完了するには、SSL 機能のない Apache バージョンを選択することをお勧めします。そのため、ここでは Apache 2.2.21-win32-x86-no ssl.msi を使用します。

2. Windows に MySQL をインストールするには、.msi インストール パッケージ形式を選択します。ダブルクリックしてウィザードに従ってインストールするだけです。

3. PHP の場合、Windows .zip バージョン、php-5.3.5-Win32-VC6-x86.zip を使用することを選択します。セキュリティとパフォーマンスの観点からは zip バージョンの方が優れており、通常はこのバージョンがサーバーにインストールされます。

VC9 は IIS 用に特別にカスタマイズされているのに対し、VC6 は Apache またはその他の WEB サービス ソフトウェア用に提供されているため、NTS バージョンまたは VC9 バージョンをダウンロードしないでください。

4. phpMyAdmin は PHP ベースのオンライン MySQL 管理ツールです。phpMyAdmin3 をインストールする場合、必要な PHP 環境はすべてここでの要件を満たしています。

ステップ 2: ファイルをインストールする

1. インストールするディスク上にフォルダーを作成します。管理しやすいように、DドライブのルートディレクトリにWAMPフォルダを作成します。 D:WAMP (WAMP は Windows+Apache+mysql+php の略称です)。

2. WAMP フォルダーの下に WWW フォルダーを作成し、PHP Web サイト プログラムを保存します。 D:WAMPWWW。

3. Apache サーバーをインストールし、Apache サーバーを D:WAMPApache フォルダーにインストールします。特定の Apache インストール プロセスについては、ドキュメント「Apache インストール図」を参照してください。

4. ダウンロードした php-5.3.5-Win32-VC6-x86 を D:WAMPPHP フォルダーに解凍します。

5. MySql データベースをインストールし、MySQL を D:WAMPMySQL フォルダーにインストールします。特定の MySQL インストール プロセスについては、ドキュメント「MySQL インストール図」を参照してください。

6. phpMyAdmin-3.4.9-all-langages.zip を解凍し、名前を phpMyAdmin に変更して、PHP Web サイトのプログラム ディレクトリにコピーします。結果は D:WAMPWWWphpMyAdmin です。

ステップ 3: Apache を構成する

まず、テキスト編集ツール (EditPlus を推奨) を使用して、D:WAMPApacheconfhttpd.conf ファイルを開きます。このファイルは、Apache 構成ファイルです。次の手順で、このファイルの内容を変更します。

httpd.conf ファイルを変更した後、新しい設定を有効にするために Apache サービスを再起動する必要があることに注意してください。

1. リスニングポートを設定します

httpd.conf ファイルを開いた後、Listen (おそらく 46 行目) を見つけ、その後ろの数字を次のように 8080 に変更します。

8080を聞いてください


このパラメータは、Apache サーバーのリスニング ポートを設定するために使用されます。通常、デフォルトは 80 です。 8080 に変更する理由は、Windows 2003 システムの IIS ポート番号との競合を避けるためです。IIS を有効にしない場合は、デフォルトのポート番号 80 を使用することもできます。

2. Apache に PHP モジュールをロードさせます

#LoadModule vhost_alias_module modules/mod_vhost_alias.so (おそらく 128 行目) を見つけて、この行の後に次の行を追加します。

リーリー
この文は、PHP5 モジュールをモジュールモードでロードすることを意味します。

リーリー


この文は、拡張子が .php のファイルを php スクリプトとして実行することを意味します。 .html、.php5、または PHP の .txt など、他の任意の拡張子を使用できます。


PHPINiDir "D:/WAMP/PHP"


この文は、PHP 設定ファイル php.ini が配置されているディレクトリを指定するために使用されます。


Apache 2 がモジュール モードで php5 を実行している場合は、PHPIniDir ディレクティブを使用できます。

3. Web サイトの保存ディレクトリを変更します

Apache のデフォルトの Web サイト保存ディレクトリは、Apache インストール ディレクトリの下の htdocs フォルダであることがわかっています。 Web サイトのストレージ ディレクトリを変更する場合は、対応する Apache 構成を変更する必要があります。


設定ファイル httpd.conf で DocumentRoot (約 182 行目) を探し、Web サイトのディレクトリ内の正しいフォルダーを指すように変更します。ここを

に変更しました

ドキュメントルート「D:/WAMP/www」


同時に、「This should be Change to anything you set DocumentRoot to」(約 207 行目) という行を探し、それを独自に設定した DocumentRoot パスに変更します。ここを次のように変更します:

リーリー


4. ディレクトリのホームページファイルを変更します

設定ファイル httpd.conf で DirectoryIndexindex.html (約 244 行目) を見つけて、次のように変更します。

リーリー

DirectoryIndex は、顧客のブラウザがアクセスするパスがディレクトリである場合に、Apache がデフォルトで実行するファイルを指します。

以我们所修改的为例:当客户浏览器访问一个目录时,Apache会去找该目录下的index.html,如果没有再找index.htm,还没有再找 index.php。都找不到则默认显示该目录下的文件列表。参考文档:如果防止Apache显示文件列表

第四步:配置PHP

打开PHP安装目录,即D:\WAMP\PHP,我们可以看到目录下有两个这样的文件 php.ini-development 和 php.ini-production,第一个是开发使用的配置文件,第二个是生产环境的配置,因为我们是在本机做开发,所以选择前者。将php.ini-development复制一份到同目录下,并改名为 php.ini。这个php.ini 就是当前使用的配置文件,以下几步都是在修改这个php.ini文件的内容。要注意的是,修改php.ini文件后需重新启动Apache服务,新设置才会生效。

1. 指定PHP扩展库的存放目录

在Windows下PHP的扩展库通常以 DLL 形式存放在PHP的ext目录中。
使用文本工具打开php.ini文件,查找extension_dir = "ext"(大概在809行),也就是在 On windows 下面那一行。把它前面的分号“;”去除掉,改为如下:

 extension_dir = "D:/WAMP/PHP/ext"

extension_dir 表示PHP扩展库的具体目录,以便调用相应的DLL文件。

2. 开启相应的扩展库

默认情况下许多PHP的扩展库都是关闭的,比如默认PHP不支持连接Mysql数据库,需开启相应的扩展库。
这里我们开启一些常用的扩展库。

查找 ; Windows Extensions(大概在941行),在它的下面是extension列表。

找到如下扩展:

;extension=php_curl.dll
 ;extension=php_gd2.dll
 ;extension=php_mbstring.dll
 ;extension=php_exif.dll
 ;extension=php_mysql.dll
 ;extension=php_mysqli.dll
 ;extension=php_pdo_mysql.dll
 ;extension=php_pdo_odbc.dll
 ;extension=php_sockets.dll
 ;extension=php_xmlrpc.dll
 ;extension=php_xsl.dll

把以上extension 前面的分号 “;” 去掉。如果你希望加载其它扩展模块,方法相同,只要去掉前面的分号即可。

提示1:重启Apache提示 “unable to load dynamic library......php_curl.dll”,加载php_curl.dll错误。解决方法是拷贝 PHP 目录下的 libeay32.dll 和 ssleay32.dll 到 windows 目录或 windows/system32 目录下,只要是系统 Path 环境变量里包含的路径就可以。如果不想拷贝,你也可以直接把 PHP 路径放到系统 Path 环境变量里。 右击我的电脑=>属性=>高级=>环境变量=>系统变量里有个Path,双击打开,把你的PHP路径加个分号“;”再前面( ;D:\WAMP\PHP ),添加进去就OK了。重启Apache不再提示该错误。

提示2:Exif 扩展是用来显示图片的 exif 信息的,因为该扩展需要 mbstring.dll 支持,所以必须将 extension=php_exif.dll 这一行写到extension=php_mbstring.dll 的后面。

提示3:如果PHP自带的扩展库不能满足你的需要,你可以去 pecl.php.net 查找并下载你需要的库。windows用户可以去 pecl4win.php.net 或者 http://downloads.php.net/pierre/ 下载已经编译好的DLL文件,也可以去http://museum.php.net/php5/ 载PECL集合压缩包。

提示4:很多人在找php_zip.dll,其实从php5.3开始已经集成了zip扩展,直接使用就行了。你可以用abfef7495ef65d511a63723b1f376b20 找到zip扩展的说明。

3. 让PHP支持短标签

在 php.ini 配置文件查找 short_open_tag = Off (大概在266行)把它修改成:short_open_tag = On 让其支持短标签。
php的代码一般包含在5250c62ac05c58a9018e18fc181b0a42的标签内,设置 short_open_tag = On 之后,可以写成更简洁的形式:d8fbc6143af030b4d33791172ddfc9d7。

4. 配置PHP的Session功能

在使用session功能时,我们必须配置session文件在服务器上的保存目录。我们需要为session建立一个可读写的目录,这个目录最好独立于网站目录之外。

这里把目录上建在了D:\WAMP\sessiontmp,然后在 php.ini 配置文件中找 ;session.save_path = "/tmp" (大概在1467行),去掉前面的分号“;” ,改为如下:

 session.save_path = "D:/WAMP/sessiontmp"

5. 配置PHP的文件上传功能

同session一样,在使用PHP文件上传功能时,我们必须要指定一个临时文件夹以完成文件上传功能,否则文件上传功能会失败。
我们建立一个可读写的目录文件夹 D:\WAMP\fileuploadtmp,然后在 php.ini 配置文件中找到 ;upload_tmp_dir = (大概875行),修改为:

 upload_tmp_dir = "D:/WAMP/fileuploadtmp"

PHP默认上传文件大小不超过2M,要想上传大于2M的文件,请参考文档  配置php.ini实现文件上传功能。

6. 设置时区

在 php.ini 配置文件查找 ;date.timezone = (大概在993行),去掉前面的分号“;” 改为如下:

 date.timezone = PRC

date.timezone是PHP5.1开始新增加的配置参数,用来设置时区。默认date.timezone是被注释掉的,也就是默认时区是UTC格林威治标准时间。

我们这里改为 date.timezone = PRC(PRC,People's Republic of China,中华人民共和国),也就是日期使用中国的时区。这样可以解决时间相差八小时的问题。

第五步:配置phpMyAdmin

打开phpMyAdmin目录,即D:\WAMP\WWW\phpMyAdmin,我们可以看到目录下有一个config.sample.inc.php 文件,将这个文件复制一份到同目录下,并改名为 config.inc.php。这个config.inc.php 就是phpMyAdmin的配置文件,以下几步都是在修改这个config.inc.php 文件的内容。

1. 设置phpMyAdmin登录方式

打开config.inc.php文件,查找 $cfg['Servers'][$i]['auth_type'] ,设置如下:

 $cfg['Servers'][$i]['auth_type'] = 'cookie';

这个参数的值设置为cookie,每次登录phpMyAdmin需要输入用户名密码。这也是phpMyAdmin的默认设置。

然后找到  $cfg['blowfish_secret'],设置如下:

 $cfg['blowfish_secret'] = 'admin10000.com';

此参数用于Cookies的加密,这是设置为admin10000.com,你可以改成自己的密码。

这里介绍一下phpMyAdmin 的四种登录方式:

cookie:这是phpMyAdmin配置默认的登录方式。需在登录界面输入MySQL的管理账号和密码。
           当选择cookie登录方式,还需要设置短语密码 $cfg['blowfish_secret'] ,这个密码用于Cookies的加密。
           例如:$cfg['blowfish_secret'] = 'admin10000.com';
           如果没有设置,登录phpMyAdmin会提示 “配置文件现在需要一个短语密码” 的错误。

config:直接在地浏览器地址栏输入phpMyAdmin登录地址即可登录,任何人都可以访问。用户名和密码提前在配置文件中设定好。
           此登录方式必须在配置文件中增加下面2行参数:
           $cfg['Servers'][$i]['user'] = '你的MySQL登录账号';
           $cfg['Servers'][$i]['password'] = '你的MySQL登陆密码;
           如果只是在本机器做开发,可以设置为config登录方式,省去每次输入密码的麻烦。

http:弹出一个对话框,输入用户名和密码后进入。
signon:类似于页面跳转的登录方式,同时需要设定$cfg['Servers'][$i]['SignonURL'],当你输入phpMyAdmin登录地址后会自动跳转到signonURL设定的网址。

2. 开启phpMyAdmin 高级功能

登录phpMyAdmin 后,在首页面的最下方会提示:“phpMyAdmin 高级功能未全部设置,部分功能不可用”。
现在我们来解决这个问题。使用phpMyAdmin的导入功能,导入phpMyAdmin/scripts/create_tables.sql 这个文件,从而建立必要的数据表。

接下来还需要新建一个MySQL用户,并授予其访问上一步操作建立的数据表的权限,这个MYSQL用户称为控制用户,为 phpMyAdmin 高级功能提供支持。

我们这里使用 pma 作为控制用户以及 pmapass 作为控制用户的密码。你可以自行更改。

在phpMyAdmin的SQL查询功能框中输入以下SQL代码:

 GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass';
 GRANT SELECT (
 Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
 Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
 File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,
 Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,
 Execute_priv, Repl_slave_priv, Repl_client_priv
 ) ON mysql.user TO 'pma'@'localhost';
 GRANT SELECT ON mysql.db TO 'pma'@'localhost';
 GRANT SELECT ON mysql.host TO 'pma'@'localhost';
 GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)
 ON mysql.tables_priv TO 'pma'@'localhost'; 

接着我们在 config.inc.php 中找到 User used to manipulate with storage 这一行。把它下面的2行参数注释(双斜杠“//”)去掉。

结果为:

 $cfg['Servers'][$i]['controluser'] = 'pma';
 $cfg['Servers'][$i]['controlpass'] = 'pmapass';

这两行分别是控制用户和控制用户密码。也就是上边我们创建的那个用户。

接着找到 Storage database and tables 这一行,把下面的几个参数的注释去掉。结果为:

 $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
 $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
 $cfg['Servers'][$i]['relation'] = 'pma_relation';
 $cfg['Servers'][$i]['table_info'] = 'pma_table_info';
 $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
 $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
 $cfg['Servers'][$i]['column_info'] = 'pma_column_info';
 $cfg['Servers'][$i]['history'] = 'pma_history';
 $cfg['Servers'][$i]['tracking'] = 'pma_tracking';
 $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';
 $cfg['Servers'][$i]['userconfig'] = 'pma_userconfig';

第六步:测试

将如下代码保存为index.php文件,放到D:\WAMP\WWW目录下面。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>测试服务器</title>
 </head>
 <body>
 <div style="text-align:center; color:red">
 <&#63;php
 $link=mysql_connect("localhost","你的mysql管理账号","你的mysql管理密码");
 if(!$link) echo "MySQL数据库 连接失败!";
 else echo "MySQL数据库 连接成功!";
 mysql_close();
 &#63;>
 </div>
 <br/>
 <&#63;php phpinfo(); &#63;>
 </body>
</html>

然后在浏览器地址栏输入“http://localhost:8080/index.php”。结果如下图所示:

www.bkjia.com本当http://www.bkjia.com/PHPjc/1049121.html技術記事 Apache による Windows 上での php 開発環境の構築 この記事では、Apache2.2.21/PHP5.3.5/Mysql5.5.19/phpMyAdmin3.4.9 を使用して Windows 2003 上で php 開発環境を構築する方法を詳しく紹介します。 ステップ 1:...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。