This article mainly introduces CentOs7 to build a PHP environment. It has certain reference value. Now I share it with everyone. Friends in need can refer to it.
Tip: wget download URL prompts that the SSL connection cannot be established. Follow the tutorial below
https://blog.csdn.net/xinghun_4/article/details/50500331
reboot 重启虚拟机
One click Install all compilation tools gcc
yum groupinstall "Development Tools" "Server Platform Development" -y
Yum add Epel source
wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpmrpm -ivh epel-release-latest-7.noarch.rpmyum repolist ##检查是否已添加至源列表
Install Nginx
yum -y install nginx 使用yum安装nginx systemctl start nginx 启动nginx,浏览器输入ip就可以看到nginx的欢迎页
3.1 Modify the Nginx configuration file to support PHP parsing
nginx配置文件默认放在/etc/nginx/nginx.confvi /etc/nginx/nginx.conf在server区间里加入以下内容 注释掉本来的这两行 # location / { # } location / { root /usr/share/nginx/html; index index.php index.html index.htm; } location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name; include fastcgi_params; } systemctl restart nginx 重启nginx
Install PHP
检查当前安装的PHP包 yum list installed | grep php 如果有安装的PHP包,先删除他们 (这条命令看情况执行看清楚你安装的包用yum remove删除) yum remove php.x86_64 php-cli.x86_64 php-common.x86_64 php-gd.x86_64 php-ldap.x86_64 php-mbstring.x86_64 php-mcrypt.x86_643
4.1 Add the yum source of PHP
Centos 5.Xrpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpmCentOs 6.x rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm CentOs 7.Xrpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpmrpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm或者使用wget wget https://mirror.webtatic.com/yum/el7/epel-release.rpmrpm -ivh epel-release.rpm
If you want to delete the Yum source package installed above, reinstall it
rpm -qa | grep webstatic rpm -e 上面搜索到的包即可
4.2 Choose what version of PHP you want to install
php5.6yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64 php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64 php5.5yum install php55w.x86_64 php55w-cli.x86_64 php55w-common.x86_64 php55w-gd.x86_64 php55w-ldap.x86_64 php55w-mbstring.x86_64 php55w-mcrypt.x86_64 php55w-mysql.x86_64 php55w-pdo.x86_64 php7 yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysql.x86_64 php70w-pdo.x86_64
4.2 Install PHP -FPM
5.5yum install php55w-fpm 5.6yum install php56w-fpm 7.0yum install php70w-fpm
Start php-fpm
systemctl start php-fpm
Configure php.ini
vi /etc/php.ini 按下esc进入命令模式,输入:/cgi.fix_pathinfo,按n 进行下一个查找,找到指定cgi.fix_pathinfo, 修改为=0;
Install Mysql I don’t put mariadb directly mysql
yum –y install mysql yum –y install mysql-devel 添加官方mysql-server的yum源 wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
Installation source
rpm -ivh mysql-community-release-el7-5.noarch.rpm 安装mysql-server yum install mysql-community-server
Start mysql
systemctl restart mysqld
If there is a firewall, open ports 80 and 3306
centos7用的是firewallfirewall-cmd --zone=public --add-port=80/tcp --permanentfirewall-cmd --zone=public --add-port=3306/tcp --permanent
Reload the firewall
firewall-cmd --reload
Related recommendations:
How to build a PHP running environment under Ubuntu server_Linux
Sublime Text3 to build a PHP development environment
Standard version of Eclipse steps to build a PHP environment
The above is the detailed content of CentOs7 builds PHP environment. For more information, please follow other related articles on the PHP Chinese website!

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

PHPisusedforsendingemailsduetoitsbuilt-inmail()functionandsupportivelibrarieslikePHPMailerandSwiftMailer.1)Usethemail()functionforbasicemails,butithaslimitations.2)EmployPHPMailerforadvancedfeatureslikeHTMLemailsandattachments.3)Improvedeliverability

PHP performance bottlenecks can be solved through the following steps: 1) Use Xdebug or Blackfire for performance analysis to find out the problem; 2) Optimize database queries and use caches, such as APCu; 3) Use efficient functions such as array_filter to optimize array operations; 4) Configure OPcache for bytecode cache; 5) Optimize the front-end, such as reducing HTTP requests and optimizing pictures; 6) Continuously monitor and optimize performance. Through these methods, the performance of PHP applications can be significantly improved.

DependencyInjection(DI)inPHPisadesignpatternthatmanagesandreducesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itallowspassingdependencieslikedatabaseconnectionstoclassesasparameters,facilitatingeasiertestingandscalability.

CachingimprovesPHPperformancebystoringresultsofcomputationsorqueriesforquickretrieval,reducingserverloadandenhancingresponsetimes.Effectivestrategiesinclude:1)Opcodecaching,whichstorescompiledPHPscriptsinmemorytoskipcompilation;2)DatacachingusingMemc


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

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.

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

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
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 Linux new version
SublimeText3 Linux latest version
