PHP 5.3.1 MySQL 5.0.89 Nginx 0.8.33 或 0.7.65 (可选) 现在,我们可以快速全自动搞定 CentOS + Nginx + PHP-FPM + MySQL 的安装了 这个可比网上流传的什么一键安装包要好得多,强烈推荐此法安装,适合所有菜鸟和高手 我服务器上全用的源代码编译安装,也好
PHP 5.3.1
MySQL 5.0.89
Nginx 0.8.33 或 0.7.65 (可选)
现在,我们可以快速全自动搞定 CentOS + Nginx + PHP-FPM + MySQL 的安装了
这个可比网上流传的什么一键安装包要好得多,强烈推荐此法安装,适合所有菜鸟和高手
我服务器上全用的源代码编译安装,也好不到哪去,还很费劲
我这个装完已经包含PHP的一些常用扩展, PDO,eaccelerator,memcache,tidy等等
先新建一个 repo
<ol><li><span><span># vi /etc/yum.repos.d/centos.21andy.com.repo </span></span></li></ol>
放入如下内容
<ol> <li><span><span>[21Andy.com] </span></span></li> <li> <span></span><span><font>name</font></span><span>=</span><span><font>21Andy</font></span><span>.com Packages for Enterprise Linux 5 - $basearch </span> </li> <li> <span></span><span><font>baseurl</font></span><span>=</span><span><font>http</font></span><span>://www.21andy.com/centos/5/$basearch/ </span> </li> <li> <span></span><span><font>enabled</font></span><span>=</span><span><font>1</font></span><span> </span> </li> <li> <span></span><span><font>gpgcheck</font></span><span>=</span><span><font>0</font></span><span> </span> </li> <li> <span></span><span><font>protect</font></span><span>=</span><span><font>1</font></span><span> </span> </li> </ol>
启用 EPEL repo
i386
<ol> <li><span><span>rpm -ihv</span></span></li> <li><span><span> http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm </span></span></li> </ol>
x86_64
<ol> <li><span><span>rpm -ihv </span></span></li> <li><span>http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm </span></li> </ol>
接着导入key
<ol><li><span><span>rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL </span></span></li></ol>
好了,一键安装
<ol><li><span><span># yum install nginx php-fpm mysql-server </span></span></li></ol>
如果 nginx 你要用 0.7.65 最新稳定版,把yum -y install nginx换成yum -y install nginx-stable就可以了
更完整的安装
<ol> <li><span><span>yum -y update </span></span></li> <li><span>yum -y mysql-server </span></li> <li><span>service mysqld start </span></li> <li><span>mysqladmin -u root password root </span></li> <li><span>service mysqld stop </span></li> <li><span>yum -y install nginx php-fpm </span></li> <li><span>php-cli php-pdo php-mysql php-mcrypt php-mbstring </span></li> <li><span>php-gd php-tidy php-xml php-xmlrpc </span></li> <li><span>php-pear php-pecl-memcache php-eaccelerator </span></li> <li><span># APC 和 eAccelerator 有冲突,2选1 </span></li> <li><span>yum -y install php-pecl-apc </span></li> </ol>
看下我的完整安装,只要一句
yum -y install nginx mysql-server php-fpm php-cli php-pdo php-mysql php-mcrypt php-mbstring php-gd php-tidy php-xml php-xmlrpc php-pear php-pecl-memcache php-eaccelerator
安装结果,全自动
<ol> <li><span><span>Dependencies </span><span><font>Resolved</font></span><span> </span></span></li> <li><span>========================================================== </span></li> <li> <span>Package Arch Version Repository </span><span><font>Size</font></span><span> </span> </li> <li><span>========================================================== </span></li> <li><span>Installing: </span></li> <li><span>mysql x86_64 5.0.89-1.el5 21Andy.com 3.5 M </span></li> <li><span>mysql-server x86_64 5.0.89-1.el5 21Andy.com 10 M </span></li> <li><span>nginx x86_64 0.8.33-3.el5 21Andy.com 422 k </span></li> <li><span>php-cli x86_64 5.3.1-2.el5 21Andy.com 2.4 M </span></li> <li><span>php-eaccelerator x86_64 2:0.9.6-1.el5 21Andy.com 118 k </span></li> <li><span>php-fpm x86_64 5.3.1-2.el5 21Andy.com 1.2 M </span></li> <li><span>php-gd x86_64 5.3.1-2.el5 21Andy.com 110 k </span></li> <li><span>php-mbstring x86_64 5.3.1-2.el5 21Andy.com 1.1 M </span></li> <li><span>php-mcrypt x86_64 5.3.1-2.el5 21Andy.com 27 k </span></li> <li><span>php-mysql x86_64 5.3.1-2.el5 21Andy.com 84 k </span></li> <li><span>php-pdo x86_64 5.3.1-2.el5 21Andy.com 91 k </span></li> <li><span>php-pear noarch 1:1.9.0-1.el5 21Andy.com 420 k </span></li> <li><span>php-pecl-memcache x86_64 2.2.5-3.el5 21Andy.com 44 k </span></li> <li><span>php-tidy x86_64 5.3.1-2.el5 21Andy.com 31 k </span></li> <li><span>php-xml x86_64 5.3.1-2.el5 21Andy.com 115 k </span></li> <li><span>php-xmlrpc x86_64 5.3.1-2.el5 21Andy.com 48 k </span></li> <li><span>Installing for dependencies: </span></li> <li><span>gmp x86_64 4.1.4-10.el5 base 201 k </span></li> <li><span>libXaw x86_64 1.0.2-8.1 base 329 k </span></li> <li><span>libXmu x86_64 1.0.2-5 base 63 k </span></li> <li><span>libXpm x86_64 3.5.5-3 base 44 k </span></li> <li><span>libedit x86_64 2.11-2.20080712cvs.el5 epel 80 k </span></li> <li><span>libmcrypt x86_64 2.5.8-4.el5.centos extras 105 k </span></li> <li><span>libtidy x86_64 0.99.0-14.20070615.el5 epel 140 k </span></li> <li><span>php-common x86_64 5.3.1-2.el5 21Andy.com 554 k </span></li> <li><span>sqlite2 x86_64 2.8.17-5.el5 21Andy.com 165 k </span></li> <li><span>t1lib x86_64 5.1.1-7.el5 epel 208 k </span></li> <li><span>Updating for dependencies: </span></li> <li><span>libevent x86_64 1.4.12-1.el5 21Andy.com 129 k </span></li> <li> <span>Transaction </span><span><font>Summary</font></span><span> </span> </li> <li><span>========================================================== </span></li> <li><span>Install 26 Package(s) </span></li> <li><span>Update 1 Package(s) </span></li> <li><span>Remove 0 Package(s </span></li> </ol>
最后只要 yum -y update 一下,全是最新的
别忘了开机启动
<ol> <li><span><span>chkconfig --level 345 mysqld on </span></span></li> <li><span>chkconfig --level 345 php-fpm on </span></li> <li><span>chkconfig --level 345 nginx on </span></li> </ol>
来看看我用虚拟机测试的强大结果
http://www.21andy.com/blog/20100219/1703.html
补充:所有的配置文件都在 /etc 目录下,包括 nginx, php-fpm, mysql 的配置文件,请自行查找设置,以下为我的 nginx 的配置范例
先新建一个 /www 目录,网站和日志也全放在这里
别忘了建日志存放目录,你在配置文件中 access_log 用到的 /www/logs
注意:fastcgi_params 要加入这一行
# vim /etc/nginx/fastcgi_params
<ol><li><span><span><font>fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; </font></span></span></li></ol>
# vi /etc/nginx/nginx.conf
<ol> <li><span><span>user nobody nobody; </span></span></li> <li><span> </span></li> <li><span>worker_processes 8; #这里根据你的CPU和内存配置, 设置2到10都OK </span></li> <li><span> </span></li> <li> <span>error_log</span><span> /www/logs/nginx_error.log crit; </span> </li> <li><span> </span></li> <li><span>pid /usr/local/nginx/logs/nginx.pid; </span></li> <li><span> </span></li> <li> <span>#Specifies the value </span><span><strong><font>for</font></strong></span><span> maximum file descriptors that can be opened by this process. </span> </li> <li><span>worker_rlimit_nofile 51200; </span></li> <li><span> </span></li> <li><span>events { </span></li> <li> <span> </span><span><strong><font>use</font></strong></span><span> epoll; </span> </li> <li><span> worker_connections 51200; </span></li> <li><span>} </span></li> <li><span> </span></li> <li><span>http { </span></li> <li> <span> </span><span><strong><font>include</font></strong></span><span> mime.types; </span> </li> <li><span> default_type application/octet-stream; </span></li> <li><span> </span></li> <li><span> #charse gb2312; # 默认编码,可以不设置 </span></li> <li><span> </span></li> <li><span> server_names_hash_bucket_size 128; </span></li> <li><span> client_header_buffer_size 16k; </span></li> <li><span> large_client_header_buffers 4 16k; </span></li> <li><span> client_max_body_size 8m; </span></li> <li><span> </span></li> <li><span> sendfile on; </span></li> <li><span> tcp_nopush on; </span></li> <li><span> </span></li> <li><span> keepalive_timeout 60; </span></li> <li><span> </span></li> <li><span> tcp_nodelay on; </span></li> <li><span> </span></li> <li><span> fastcgi_connect_timeout 300; </span></li> <li><span> fastcgi_send_timeout 300; </span></li> <li><span> fastcgi_read_timeout 300; </span></li> <li><span> fastcgi_buffer_size 64k; </span></li> <li><span> fastcgi_buffers 4 64k; </span></li> <li><span> fastcgi_busy_buffers_size 128k; </span></li> <li><span> fastcgi_temp_file_write_size 128k; </span></li> <li><span> </span></li> <li><span> gzip on; </span></li> <li><span> gzip_min_length 1k; </span></li> <li><span> gzip_buffers 4 16k; </span></li> <li><span> gzip_http_version 1.0; </span></li> <li><span> gzip_comp_level 5; </span></li> <li><span> gzip_types text/plain text/javascript application/x-javascript text/css application/xml; </span></li> <li><span> gzip_vary on; </span></li> <li><span> </span></li> <li> <span> #limit_zone crawler </span><span><font>$binary_remote_addr</font></span><span> 10m; </span> </li> <li><span> server { </span></li> <li><span> listen 80; </span></li> <li><span> server_name localhost; </span></li> <li><span> root /www; </span></li> <li><span> location /status { </span></li> <li><span> stub_status on; </span></li> <li><span> access_log off; </span></li> <li><span> } </span></li> <li><span> location / { </span></li> <li><span> # 这里是把所有不存在的文件和目录,全都转到 index.php 处理 </span></li> <li> <span> try_files </span><span><font>$uri</font></span><span> </span><span><font>$uri</font></span><span>/ /index.php?q=</span><span><font>$uri</font></span><span>&</span><span><font>$args</font></span><span>; </span> </li> <li><span> } </span></li> <li><span> </span></li> <li><span> # 这里分开放到 server.conf 是为了再开 server 的时候方便,统一调用,放到/etc/nginx/ 目录下 </span></li> <li> <span> </span><span><strong><font>include</font></strong></span><span> server.conf; </span> </li> <li><span> </span></li> <li> <span> log_format access </span><span><font>'$remote_addr - $remote_user [$time_local] "$request" '</font></span><span> </span> </li> <li> <span> </span><span><font>'$status $body_bytes_sent "$http_referer" '</font></span><span> </span> </li> <li> <span> </span><span><font>'"$http_user_agent" $http_x_forwarded_for'</font></span><span>; </span> </li> <li><span> access_log /www/logs/access.log access; </span></li> <li><span> } </span></li> <li><span> </span></li> <li><span> server { </span></li> <li><span> listen 80; </span></li> <li><span> server_name www.21andy.com 21andy.com *.21andy.com; </span></li> <li><span> root /www/21andy.com; </span></li> <li> <span> </span><span><strong><font>if</font></strong></span><span> (</span><span><font>$host</font></span><span> !~* 21andy\.com$) { </span> </li> <li> <span> </span><span><strong><font>return</font></strong></span><span> 444; </span> </li> <li><span> } </span></li> <li><span> location / { </span></li> <li> <span> try_files </span><span><font>$uri</font></span><span> </span><span><font>$uri</font></span><span>/ /index.php?q=</span><span><font>$uri</font></span><span>&</span><span><font>$args</font></span><span>; </span> </li> <li><span> } </span></li> <li> <span> </span><span><strong><font>include</font></strong></span><span> server.conf; # 这里复用了,这段就省了 </span> </li> <li><span> access_log /www/logs/21andy.com_access.log access; </span></li> <li><span> } </span></li> <li><span>} </span></li> </ol>
# vi /etc/nginx/server.conf
<ol> <li><span><span>index index.html index.htm index.php; </span></span></li> <li><span> </span></li> <li><span>#limit_conn crawler 20; </span></li> <li><span> </span></li> <li><span>location ~ /\.ht { </span></li> <li><span> deny all; </span></li> <li><span>} </span></li> <li><span> </span></li> <li><span>location ~ .*\.(sqlite|sq3)$ { </span></li> <li><span> deny all; </span></li> <li><span>} </span></li> <li><span> </span></li> <li><span>location ~ .*\.php$ { </span></li> <li><span> fastcgi_pass unix:/tmp/php-cgi.sock; </span></li> <li><span> #fastcgi_pass 127.0.0.1:9000; </span></li> <li><span> fastcgi_index index.php; </span></li> <li> <span> </span><span><strong><font>include</font></strong></span><span> fastcgi_params; </span> </li> <li><span>} </span></li> <li><span> </span></li> <li><span>location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$ { </span></li> <li><span> expires 30d; </span></li> <li><span> access_log off; </span></li> <li><span>} </span></li> <li><span> </span></li> <li><span>location ~ .*\.(js|css)?$ { </span></li> <li><span> expires 30d; </span></li> <li><span> access_log off; </span></li> <li><span>} </span></li> </ol>
本行以下内容可以略过
php-fpm 也可以用以下设置,但建议用上面的,比较稳定
<ol> <li><span><span>location ~ \.php$ { </span></span></li> <li><span> root /www; </span></li> <li><span> fastcgi_pass 127.0.0.1:9000; </span></li> <li><span> fastcgi_index index.php; </span></li> <li><span> #下面这一行要加在 /etc/nginx/fastcgi_params 里 </span></li> <li> <span> #fastcgi_param SCRIPT_FILENAME </span><font><span>$document_root</span><span>$fastcgi_script_name</span></font><span>; </span> </li> <li> <span> </span><span><strong><font>include</font></strong></span><span> fastcgi_params; </span> </li> <li><span>} </span></li> </ol>
不管是使用 php-cgi.sock 或 9000 端口方法,nginx 和 php-fpm 都要同时设置成一样的
nginx 的设置上面已经提过,记得同时修改 php-fpm.conf 相应的地方

win11安装语言包错误0x800f0950什么原因?当我们在给windows11系统安装新语言包时,有时会遇到系统提示错误代码:0x800f0950,导致语言包安装流程无法继续进行下去。导致这个错误代码一般是什么原因,又要怎么解决呢?今天小编就来给大家说明一下win11安装语言包错误0x800f0950的具体解决步骤,有需要的用户们赶紧来看一下吧。win11电脑错误代码0x800f0950解决技巧1、首先按下快捷键“Win+R”打开运行,然后输入:Regedit打开注册表。2、在搜索框中输入“

GoogleDocs在学校和工作环境中变得很流行,因为它提供了文字处理器所期望的所有功能。使用Google文档,您可以创建文档、简历和项目提案,还可以与世界各地的其他用户同时工作。您可能会注意到GoogleDocs不包括MicrosoftWord附带的所有功能,但它提供了自定义文档的能力。使用正确的字体可以改变文档的外观并使其具有吸引力。GoogleDocs提供了大量字体,您可以根据自己的喜好从中选择任何人。如果您希望将自定义字体添加到Google文档,请继续阅读本文。在本文中

Notepad++主要由开发人员用于编辑源代码,由临时用户用于编辑文本。但是,如果您刚刚升级到Windows11,则在您的系统上下载和安装该应用程序可能具有挑战性。因此,我们将讨论在Windows11上下载和安装记事本++。此外,您可以轻松阅读我们关于修复Notepad++在Windows上没有响应的详细指南。记事本++可以在Windows11上运行吗?是的,记事本++可以在Windows11上有效工作,而不会出现兼容性问题。更具体地说,没有臃肿的选项或错误,只需在一个非常小的编辑器中即可。此外

Steam客户端无法识别您计算机上的任何游戏吗?当您从计算机上卸载Steam客户端时,会发生这种情况。但是,当您重新安装Steam应用程序时,它会自动识别已安装文件夹中的游戏。但是,别担心。不,您不必重新下载计算机上的所有游戏。有一些基本和一些高级解决方案可用。修复1–尝试在同一位置安装游戏这是解决这个问题的最简单方法。只需打开Steam应用程序并尝试在同一位置安装游戏即可。步骤1–在您的系统上打开Steam客户端。步骤2–直接进入“库”以查找您拥有的所有游戏。第3步–选择游戏。它将列在“未分类

<p><strong>HaloInfinite(Campaign)</strong>是一款第一人称射击视频游戏,于2021年11月推出,可供单人和多用户使用。该游戏是Halo系列的延续,适用于Windows、XboxOne和Xbox系列的用户X|S。最近,它还在PC版XboxGamePass上发布,以提高其可访问性。大量玩家报告在尝试使用WindowsPC上的<strong>Xbox应

我们深知MicrosoftWindows11是一个功能齐全且设计吸引人的操作系统。但是,用户一直要求Windows11Lite版本。尽管它提供了重大改进,但Windows11是一个资源匮乏的操作系统,它可能很快就会使旧机器混乱到无法顺利运行的地步。本文将解决您最常问的关于是否有Windows11Lite版本以及是否可以安全下载的问题。跟着!有Windows11Lite版本吗?我们正在谈论的Windows11Lite21H2版本是由Neelkalpa的T

虚拟机怎么安装Win11?近期有用户想要尝试使用VirtualBox虚拟机安装Win11,但是不太清楚具体的操作方法,针对这一情况,小编将为大家演示使用VirtualBox安装Win11的方法,很多小伙伴不知道怎么详细操作,小编下面整理了使用VirtualBox安装Win11的步骤,如果你感兴趣的话,跟着小编一起往下看看吧! 使用VirtualBox安装Win11的步骤 1、要下载VirtualBox,请前往VirtualBox官方下载页面,下载适用于Windows的.exe文件。如果你

重装系统对于电脑小白来说真不是一件简单的事情,那么下面就和大家聊聊电脑重装精简版win7系统的一个方法吧。1、在小白一键重装系统官网中下载小白三步装机版软件并打开,软件会自动帮助我们匹配合适的系统,然后点击立即重装。2、接下来软件就会帮助我们直接下载系统镜像,只需要耐心等候即可。3、下载完成后软件会帮助我们直接进行在线重装Windows系统,请根据提示操作。4、安装完成后会提示我们重启,选择立即重启。5、重启后在PE菜单中选择XiaoBaiPE-MSDNOnlineInstallMode菜单进入


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

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Dreamweaver CS6
Visual web development tools

WebStorm Mac version
Useful JavaScript development tools

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

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.

Atom editor mac version download
The most popular open source editor
