


window+nginx+php environment configuration with configuration instructions_PHP tutorial
1. Download PHP
There are many PHP download versions. Among them,
vc9=vs2008 is recommended to be compiled, and the IIS+php combination mode is recommended.
vc6=vs6 is compiled, and apache+php is recommended. Method matching,
Thread Safe, thread safety, thread (Thread) safety check will be performed during execution to prevent the CGI execution method of starting a new thread when there are new requirements and exhausting system resources. Non Thread Safe is non-thread safe and does not perform thread (Thread) safety checks during execution.
Non Thread Safe,
Let’s look at the two execution methods of PHP: ISAPI and FastCGI.
The ISAPI execution method is used in the form of a DLL dynamic library, which can be executed after being requested by the user. It will not disappear immediately after processing a user request, so a thread safety check is required to improve the execution efficiency of the program. Therefore, if ISAPI is used to execute PHP, it is recommended to choose the Thread Safe version;
The FastCGI execution method uses a single thread to perform operations, so there is no need to perform thread safety checks. Removing the protection of thread safety checks can improve execution efficiency. , Therefore, if FastCGI is used to execute PHP, it is recommended to choose the Non Thread Safe version.
The official does not recommend that you use Non Thread Safe in a production environment, so we choose the Thread Safe version of PHP to use.
2, configure php
Extract to a directory, such as c:/php345
Rename php.ini-development to php.ini
fastcgi.impersonate=1 The default is 0. If you use IIS, you need to enable: cgi.fix_pathinfo=1
cgi.force_redirect=0 is enabled by default. If you use IIS, you can turn it off
Then specify the extension_dir directory and date.timezone directory
Extension_dir = "C:/php53iis/ext"
date.timezone= Asia/Shanghai
Modify cgi.fix_pathinfo = 1 in the PHP.INI configuration file, PHP will correct SCRIPT_FILENAME to the real file address, otherwise PHP will not be able to find the PHP file it needs to process.
3. Configure nginx
Decompress nginx, such as c:/nginx
Set the storage directory of error.log, and set the #location of #error_log logs/error.log; to the default error.log It is stored in the logs directory in the Nginx installation directory.
Set the WEB server directory, similar to document_root in the PHP.INI configuration file. The information in the Nginx configuration file is as follows
location / {
root D:/PHPWeb;
index index.php index.html index.htm;
}
location ~ .php$ {
root D:/PHPWeb;
fastcgi_pass 127.0 .0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME D:/PHPWeb$fastcgi_script_name;
include fastcgi_params;
Note: /scripts in fastcgi_param SCRIPT_FILENAME is modified to The WEB directory set previously, otherwise an HTTP 404 error will be reported.
Modify cgi.fix_pathinfo = 1 in the PHP.INI configuration file, PHP will correct SCRIPT_FILENAME to the real file address, otherwise PHP will not be able to find the PHP file that needs to be processed.
4. Run
Download RunHiddenConsole
Firewall supports RunHiddenConsole C:/php52iis/php-cgi.exe -b 127.0.0.1:9000 -c C:/windows/php.ini
From: http://www.cnblogs.com/ihwt/archive/2010/12/18/1909742.html
If you want to save trouble, you can use the following software to quickly deploy Nginx-based PHP Running environment:
http://www.jb51.net/softs/33785.html

APHPDependencyInjectionContainerisatoolthatmanagesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itactsasacentralhubforcreatingandinjectingdependencies,thusreducingtightcouplingandeasingunittesting.

Select DependencyInjection (DI) for large applications, ServiceLocator is suitable for small projects or prototypes. 1) DI improves the testability and modularity of the code through constructor injection. 2) ServiceLocator obtains services through center registration, which is convenient but may lead to an increase in code coupling.

PHPapplicationscanbeoptimizedforspeedandefficiencyby:1)enablingopcacheinphp.ini,2)usingpreparedstatementswithPDOfordatabasequeries,3)replacingloopswitharray_filterandarray_mapfordataprocessing,4)configuringNginxasareverseproxy,5)implementingcachingwi

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl

TomakePHPapplicationsfaster,followthesesteps:1)UseOpcodeCachinglikeOPcachetostoreprecompiledscriptbytecode.2)MinimizeDatabaseQueriesbyusingquerycachingandefficientindexing.3)LeveragePHP7 Featuresforbettercodeefficiency.4)ImplementCachingStrategiessuc

ToimprovePHPapplicationspeed,followthesesteps:1)EnableopcodecachingwithAPCutoreducescriptexecutiontime.2)ImplementdatabasequerycachingusingPDOtominimizedatabasehits.3)UseHTTP/2tomultiplexrequestsandreduceconnectionoverhead.4)Limitsessionusagebyclosin

Dependency injection (DI) significantly improves the testability of PHP code by explicitly transitive dependencies. 1) DI decoupling classes and specific implementations make testing and maintenance more flexible. 2) Among the three types, the constructor injects explicit expression dependencies to keep the state consistent. 3) Use DI containers to manage complex dependencies to improve code quality and development efficiency.

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

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

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Dreamweaver CS6
Visual web development tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Mac version
God-level code editing software (SublimeText3)
