search
HomeBackend DevelopmentPHP TutorialNew installation of Apache2, PHP5, MYSQL5_PHP tutorial under Win XP

Seeing that PHP and MYSQL have released new versions, I wanted to try something new, so I tried to install it, and then wrote down the installation process. I hope it can be helpful to novices learning PHP. Buzhu may consider it more refined

The simple process of newly installing Apache2, PHP5, MYSQL5, Zend under Windows XP

1. Download address:
Apache2.0.50: http://httpd.apache.org/download.cgi
PHP5.0.2: http://cn2.php.net/get/php-5.0.2-Win32.zip/from/a/mirror
MYSQL5.0.2: http://dev.mysql.com/downloads /mysql/5.0.html
Zend2.5.2: http://www.zend.com/store/free_download.php?pid=13]

I won’t talk about the installation of the software, there are only The one under PHP is a zip package, just unzip it directly.
The installation order is the order listed above. I installed Zend last after everything ran smoothly.

2. Simple installation process:
(1) Apache:
The installation of Apache2.0.50 is very simple. I installed it directly to the root directory of E drive (my C drive is the system drive and D drive It is a temp disk. I accidentally found that using a separate partition under Windows to store temporary files has a great impact on the speed of the system. Doing so can improve the speed of the system. Interested friends can give it a try). After installation, my The apache directory is E: apache2
(2) PHP:
I directly unzipped it and put it in the php directory of the E drive, which will make it much easier to find files.
(3) Mysql:
Install directly to E: mysql. Its default directory is too long and is under the C drive. Even the C drive does not contain anything except windows files.
(4) Zend:
After all debugging was normal, I installed Zend under E:program fileszend

3. Configuration process:
(1) http.conf

I changed several places in this file:
To run PHP directly as a module of apache, I added two sentences in it:

CODE: [Copy to clipboard]
LoadModule php5_module "E:/php/php5apache2.dll"
AddType application/x-httpd-php .php

I created a www directory in the E:apache2 directory to store my site files , changed this sentence in http.conf:
Changed DocumentRoot "E:/Apache2/htdocs" to DocumentRoot "E:/Apache2/www"

Apache2.0.x in 1.3 Compared with 2.0.x, .x cannot directly list directories by default. I felt uncomfortable, so I changed it:
Put the following statement under the sentence DocumentRoot "E:/Apache2/www"

CODE: [Copy to clipboard]

Options FollowSymLinks
AllowOverride None
/>

changed to:

CODE: [Copy to clipboard]

Options Indexes FollowSymLinks
AllowOverride None
/>

Set the default character of apache to Chinese simplified:
AddDefaultCharset GB2312

Modify the directory Default homepage:
After DirectoryIndex, write the file name you want to set as the homepage, such as: index.html index.php, etc.

No other changes are made

One thing to note The thing is, to make these configurations take effect, you need to restart apache

(2) php.ini
When I used php4.x in the past, I thought it was very simple to configure, so I even used PHP5 and configured it directly. Who knew that mysql could not be used and it was said that the dynamic library could not be connected. I checked carefully and php_mysql.dll clearly existed, but it said it could not be found. This made me depressed for a long time. I even re-decompressed php5 to no avail. Later, I found this sentence in the install document of php: php_mysql.dll MySQL functions PHP >= 5.0.0, requires libmysql.dll (bundled)
So I found the reason...
Configuring php5.0.2 is done like this:
Copy php.ini-dist to C:windows and rename it to php.ini (everyone who has installed php has done this)
Then modified a few places :
extension_dir = "E:phpext" (Specify the directory of the dynamic link library. The difference between php5 and php4 is that its dynamic link library directory has changed. This is detailed in its document structure)
Then remove the semicolons in front of the following sentences
; extension=php_dba.dll
; extension=php_dbase.dll
; extension=php_filepro.dll
; extension=php_gd2.dll
; extension=php_imap.dll
;extension=php_mysql.dll

Next, some file upload and maximum memory usage limits were modified:
memory_limit = 20M
post_max_size = 20M
upload_max_filesize = 20M
Nothing else has been changed. After modifying php.ini, apache must be restarted

The next very important thing is to copy libmysql.dll and libmysqli.dll in the php directory Under windows/system32, if you don't do this, the mysql dynamic link library cannot be loaded normally.

(3) Configuration of Mysql and Zend
Now that Apache and PHP have been configured, enter localhost in the browser to see the result. It runs successfully, and then enter localhost/phpmyadmin to see it is also successful.Depressed, Phpmyadmin prompts error message:

QUOTE:
MySQL returns:

#1251 - Client does not support authentication protocol requested by server; considering upgrading MySQL client

It’s strange, even though I installed the latest version of MYSQL, how could the client version be too low? It’s really frustrating
I just let it go for a while. After many tests and still failed, I gave up and started playing with KOF97
Then with the help of CCF.Panda and IM286.ceo, I finally found the reason:
Legacy CEO: "Upgrade the client
The new version of mysql uses a new password verification method
Set mysql password This problem can be solved by using old_password"
CCF. Panda: "Just use old_password" to reset the password"
Thanks to these two friends, the specific solution is as follows:
Because I don’t know how. Upgrade the client, because the server and client are installed bundled under Windows, I used the old_password method:

QUOTE:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD(newpwd)
-> WHERE Host = some_host AND User = some_user;
mysql> FLUSH PRIVILEGES;

Then browse "http://localhost/phpmyadmin", OH YEAH!


www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/532638.htmlTechArticleLooking at PHP and MYSQL, there are new versions. I wanted to try something new, so I tried to install it, and then I have written down the installation process, hoping it will be of some help to newbies learning PHP. Buzhu may consider Jingyi...
Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
How can you check if a PHP session has already started?How can you check if a PHP session has already started?Apr 30, 2025 am 12:20 AM

In PHP, you can use session_status() or session_id() to check whether the session has started. 1) Use the session_status() function. If PHP_SESSION_ACTIVE is returned, the session has been started. 2) Use the session_id() function, if a non-empty string is returned, the session has been started. Both methods can effectively check the session state, and choosing which method to use depends on the PHP version and personal preferences.

Describe a scenario where using sessions is essential in a web application.Describe a scenario where using sessions is essential in a web application.Apr 30, 2025 am 12:16 AM

Sessionsarevitalinwebapplications,especiallyfore-commerceplatforms.Theymaintainuserdataacrossrequests,crucialforshoppingcarts,authentication,andpersonalization.InFlask,sessionscanbeimplementedusingsimplecodetomanageuserloginsanddatapersistence.

How can you manage concurrent session access in PHP?How can you manage concurrent session access in PHP?Apr 30, 2025 am 12:11 AM

Managing concurrent session access in PHP can be done by the following methods: 1. Use the database to store session data, 2. Use Redis or Memcached, 3. Implement a session locking strategy. These methods help ensure data consistency and improve concurrency performance.

What are the limitations of using PHP sessions?What are the limitations of using PHP sessions?Apr 30, 2025 am 12:04 AM

PHPsessionshaveseverallimitations:1)Storageconstraintscanleadtoperformanceissues;2)Securityvulnerabilitieslikesessionfixationattacksexist;3)Scalabilityischallengingduetoserver-specificstorage;4)Sessionexpirationmanagementcanbeproblematic;5)Datapersis

Explain how load balancing affects session management and how to address it.Explain how load balancing affects session management and how to address it.Apr 29, 2025 am 12:42 AM

Load balancing affects session management, but can be resolved with session replication, session stickiness, and centralized session storage. 1. Session Replication Copy session data between servers. 2. Session stickiness directs user requests to the same server. 3. Centralized session storage uses independent servers such as Redis to store session data to ensure data sharing.

Explain the concept of session locking.Explain the concept of session locking.Apr 29, 2025 am 12:39 AM

Sessionlockingisatechniqueusedtoensureauser'ssessionremainsexclusivetooneuseratatime.Itiscrucialforpreventingdatacorruptionandsecuritybreachesinmulti-userapplications.Sessionlockingisimplementedusingserver-sidelockingmechanisms,suchasReentrantLockinJ

Are there any alternatives to PHP sessions?Are there any alternatives to PHP sessions?Apr 29, 2025 am 12:36 AM

Alternatives to PHP sessions include Cookies, Token-based Authentication, Database-based Sessions, and Redis/Memcached. 1.Cookies manage sessions by storing data on the client, which is simple but low in security. 2.Token-based Authentication uses tokens to verify users, which is highly secure but requires additional logic. 3.Database-basedSessions stores data in the database, which has good scalability but may affect performance. 4. Redis/Memcached uses distributed cache to improve performance and scalability, but requires additional matching

Define the term 'session hijacking' in the context of PHP.Define the term 'session hijacking' in the context of PHP.Apr 29, 2025 am 12:33 AM

Sessionhijacking refers to an attacker impersonating a user by obtaining the user's sessionID. Prevention methods include: 1) encrypting communication using HTTPS; 2) verifying the source of the sessionID; 3) using a secure sessionID generation algorithm; 4) regularly updating the sessionID.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function