Site icon 时鹏亮的Blog

CentOS-Nginx-PHP-fpm-MySQL环境搭建与配置

请知悉:本文最近一次更新为 11年 前,文中内容可能已经过时。

最近买了个VPS嘛,所以动手研究下环境搭建,不用一键包,卸载掉默认安装的Apache,纯手动来一次也挺有意思的,下面整理出过程供新手学习。

0. 卸载httpd和mail相关的程序并更新系统所有程序

yum -y remove httpd*
yum -y remove sendmail*
chkconfig saslauthd off
killall saslauthd
rm -rf /var/run/saslauthd/
yum -y update

1. 安装nginx相关的依赖包

(网上百度的)

yum -y install gcc openssl-devel pcre-devel zlib-devel libtool c++

2.添加一个不能登录且没有主目录的用户:

useradd www -M -s /sbin/nologin

3.下载安装nginx

cd /opt
wget http://nginx.org/download/nginx-1.5.8.tar.gz
tar zxvf nginx-1.5.8.tar.gz
cd nginx-1.5.8
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module
make && make install
cd ..

4.下载安装php

wget http://us1.php.net/distributions/php-5.5.8.tar.gz
tar zxvf php-5.5.8.tar.gz
cd php-5.5.8
./configure --prefix=`pwd`-build --enable-fpm --enable-mbstring --with-zlib --with-mysql --with-mysql-sock=/tmp/mysql.sock --with-mysqli --with-iconv --with-pdo-mysql --with-pdo-sqlite --with-openssl --enable-opcache
make && make install

#–prefix=`pwd`-build 表示当前的目录名+“-build”

5.nginx和php的配置

(内容太多就不详细说明了,下了CentOS-nginx-php-fpm-mysql环境搭建与配置.rar 照着做就好,具体修改哪些可以根据下面提到的默认文件自行对比)

上传覆盖前可以先把默认文件下回来,这样有空自己用Compare It!.zip 对比下看看都改了哪些参数配置。

  1. 利用SFTP上传php-fpm.conf到/opt/php-5.5.8-build/etc/(默认文件位于/opt/php-5.5.8-build/etc/php-fpm.conf.default)
  2. 利用SFTP上传php.ini到/opt/php-5.5.8-build/lib/(默认文件位于/opt/php-5.5.8/php.ini-production)
  3. 利用SFTP上传nginx.conf到/usr/local/nginx/conf/(默认文件就是该目录同名文件/opt/nginx-1.5.8/conf/nginx.conf)

命令行mkdir或者SFTP连接后在根目录建立www目录
修改vhost.conf后上传到www目录,并在www目录后建立你在vhost.conf中设定的网站目录即可。(default目录先别建立,后面会处理)

至此,nginx和php的安装配置结束。

  1. 启动nginx /usr/local/nginx/sbin/nginx
  2. 如果你修改了vhost.conf,则需要重载nginx配置 /usr/local/nginx/sbin/nginx -s reload
  3. 启动php /opt/php-5.5.8-build/sbin/php-fpm
  4. 如果修改了php的配置,需要重启php-fpm,可以执行
    关闭 killall php-fpm

    启动

    /opt/php-5.5.8-build/sbin/php-fpm

如果你在使用的过程中发现php缺失一些功能,需要重新编译添加功能,则先关闭php-fpm,然后重新执行./configure指令以及make指令那些既可,添加新功能是添加到./configure里哦。具体的可以自己学习下。博主添加的已经很全面了。

6.安装MySQL(实在懒得下了编译了,就用默认的yum装好了)

yum -y install MySQL-server

利用SFTP上传my.cnf到/etc/(默认文件就是该目录同名文件/etc/my.conf)

命令行mkdir或者SFTP连接后在www目录下建立MySQL目录作为MySQL的数据库存放目录(my.conf已经指定)

启动MySQL服务:

/etc/rc.d/init.d/mysqld start

如果修改了my.cnf配置,需要重启MySQL,执行如下指令:

/etc/rc.d/init.d/mysqld restart

修改数据库root用户的密码(密码记住,后面还要用)

mysqladmin -u root password 密码

至此,MySQL也正常运转了。

7.添加phpMyAdmin

cd /www/
wget http://jaist.dl.sourceforge.net/project/phpMyAdmin/phpMyAdmin/3.4.10.1/phpMyAdmin-3.4.10.1-all-languages.zip
yum -y install unzip
unzip phpMyAdmin-4.1.4-all-languages.zip
mv phpMyAdmin-4.1.4-all-languages default

如此,你访问VPS的IP就可以进入phpMyAdmin了,前面vhost.conf里的IP记得添加自己的哦,否则进去就是403。
成功进入后执行个SQL指令

UPDATE MySQL.user SET Password = PASSWORD('密码') WHERE User = 'root'

这样就把所有root的密码都变更到你刚才设定的了

8.添加nginx,php-fpm和MySQL自启动

sudo vim /etc/rc.d/rc.local

按“i”进入编辑状态,在

touch /var/lock/subsys/local

下面的行添加

/opt/php-5.5.8-build/sbin/php-fpm
/usr/local/nginx/sbin/nginx

按ESC退出编辑状态,按“:”键进入命令行模式,输入

wq!

回车。
nginx和php-fp自启动就添加好了。

设置MySQL服务随系统启动自启动

chkconfig mysqld on

确认下MySQL自启动(执行下面指令后如果2-5都是on就设置好了)

chkconfig --list mysqld

现在环境什么的都搞定了,可以SFTP到你网站的目录上传WordPress什么的折腾了。权限不足什么的自己研究下,给予适当的读写权限既可。


如您从本文得到了有价值的信息或帮助,请考虑扫描文末二维码捐赠和鼓励。

本站资源,请 注册城通账户 后,使用客户端下载,参考教程:城通网盘如何使用客户端下载文件


尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。


与《CentOS-Nginx-PHP-fpm-MySQL环境搭建与配置》相关的博文:

Exit mobile version