注:管理服务器时,强烈建议使用普通用户!
LNMP(即nginx-mysql-php)服务器一直是被认为性能高,内存占用少的服务器,下面我们来介绍怎么通过简单的YUM命令安装
一、准备工作
1、配置防火墙,开启80端口、3306端口
vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
#允许80端口通过防火墙
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
#允许3306端口通过防火墙
正确的应该是添加到默认的22端口这条规则的下面保存,并重启iptables /etc/init.d/iptables restart
2、关闭SELINUX (最好关闭掉)
#SELINUX=enforcing
#注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq #保存退出
shutdown -r now #重启系统
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq #保存退出
shutdown -r now #重启系统
或者临时关闭:
$ sudo setenforce 0
$ sestatus
3、安装C编译器:
yum -y install gcc gcc-c++ autoconf automake
4、安装第三方yum源
sohu源地址(64位源): http://mirrors.sohu.com/fedora-epel/6/x86_64/
centos 6.X 64位:
rpm -Uvh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
二、安装mysql
yum -y install gcc gcc-c++ autoconf automake
4、安装第三方yum源
sohu源地址(64位源): http://mirrors.sohu.com/fedora-epel/6/x86_64/
centos 6.X 64位:
rpm -Uvh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
1、先卸载系统自带的apache,然后更新软件库
yum update
2、yum安装mysql
建议使用下面
<1>或
<2>两种方法的一种安装:
<1>【mysql目录】
[★]centos6.5使用yum安装mysql5.6
<2>【mysql目录】
[★]
CentOS 6.5上安装MariaDB 10
<3> 直接安装
yum -y install mysql-server
3、加入启动项并启动mysql
/etc/init.d/mysqld start
4、设置mysql密码及相关设置
/usr/bin/mysqladmin -u root password '123456' // 第一次,为root账号设置密码
也可参考:mysql_secure_installation
因为第一次启动这命令,所以直接回车下一步,然后输入你的mysql密码,按照提示操作。
1、yum安装nginx
yum -y install nginx
2、添加到启动项并启动nginx
chkconfig --levels 235 nginx on
/etc/init.d/nginx start
yum -y install nginx
2、添加到启动项并启动nginx
chkconfig --levels 235 nginx on
/etc/init.d/nginx start
文章来源:
http://webtatic.com/packages/php55/
这里使用 Webtatic EL6的YUM源来安装php5.5
建议安装前,先卸载以前的php再进行安装,使用:
CentOS/RHEL 7.x:
CentOS/RHEL 6.x:
CentOS/RHEL 5.x:
安装php5.5
yum -y install php55w php55w-common php55w-mysql php55w-fpm php55w-gd php55w-imap php55w-mbstring php55w-mcrypt php55w-pdo php55w-soap php55w-tidy php55w-xml php55w-xmlrpc php55w-devel php55w-pgsql
安装项可以参考“
[LNMP目录中]
PHP 5.4 on CentOS/RHEL 6.2”
1、PHP配置
<1> 编辑文件php.in
修改:
short_open_tag = On
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE
date.timezone = PRC
short_open_tag = On
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE
date.timezone = PRC
request_order = "CGP"
保存
保存
<2> 启动php-fpm
service php-fpm start
<3> php-fpm加入启动项
chkconfig --levels 235 php-fpm on
修改nginx配置文件,添加fastcgi支持
修改nginx.conf文件 :vi /etc/nginx/nginx.conf
配置多站点虚拟域名:配置/etc/nginx/nginx.conf,确认能够引入/etc/nginx/conf.d中配置已.conf为后缀的配置文件(后缀自定义)
<1> 配置文件部分代码:
server{
listen 80;
root /home/www/test;
index index.php index.html index.htm;
server_name www.test.com;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
try_files $uri $uri/ /index.php?$args;
#try_files $uri $uri/ /index.php?s=$uri;
location ~ \.php {
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
<2> 重启nginx php-fpm
/etc/init.d/nginx restart
/etc/init.d/php-fpm restart
<3> 建立info.php文件
<1> 配置文件部分代码:
server{
listen 80;
root /home/www/test;
index index.php index.html index.htm;
server_name www.test.com;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
try_files $uri $uri/ /index.php?$args;
#try_files $uri $uri/ /index.php?s=$uri;
location ~ \.php {
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
<2> 重启nginx php-fpm
/etc/init.d/nginx restart
/etc/init.d/php-fpm restart
<3> 建立info.php文件
添加如下代码:
<?php
phpinfo();
?>
在浏览器打开测试是否正常,如
http://www.test.com/info.php(记得hosts文件进行配置)。
六、其它注意项
1、【mysql目录】centos 6.5 修改mysq数据库目录问题
2、【mysql目录】当mysql开启bin-log,请查看“This function has none of DETERMINISTIC, NO SQL解决办法”
3、【nginx目录】nginx提示:413 Request Entity Too Large (设置nginx上传大小限制)
4、【PHP目录】[★] php上传下载文件大小限制