Centos 6.5 搭建LNMP服务器(nginx+mysql+php)

以前只是在centos环境下写c/c++代码,没有搭建过什么服务器,因为项目需要,所以现在要将项目中用到的服务器部署在现网上,在搭建过程中遇到了一些问题,现在将自己的一些经验贴出来,供大家分享

1、防火墙开放端口

nginx :默认是80 ,也可以添加server,并设置监听端口,我这里再增加一个端口8186

mysql:默认是3306

mongo:nosql数据库,默认是27017

注意:

如果你的系统是刚装的,因为不存在/etc/sysconfig/iptables配置文件,你可以用如下命令开放端口

/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT

/sbin/iptables -I INPUT -p tcp --dport 8180 -j ACCEPT

/sbin/iptables -I INPUT -p tcp --dport 8186 -j ACCEPT

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

/sbin/iptables -I INPUT -p tcp --dport 27017 -j ACCEPT

如果你的系统已经存在配置文件/etc/sysconfig/iptables,可以直接编辑配置文件/etc/sysconfig/iptables,添加如下内容:

-A INPUT -p tcp -m tcp --dport 8186 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 27017 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8180 -j ACCEPT

修改完毕后,重启防火墙,命令如下

service iptables restart 或者/etc/init.d/iptables restart

2、安装mysql数库服务器

有两种安装方式,一种到官网下载源码进行安装,另一种直接使用yum命令安装,yum命令安装的方式可能安装的版本比较旧,如果你想使用最新的版本,建议采用下载源码的方式安装。

我这里采用yum命令安装

yum install mysql mysql-server -y

安装完成后,启动mysql数据库,启动方式如下:

service mysqld start 或者/etc/init.d/mysqld start

(1)设置root用户密码

mysql数据库安装完成后只有一个root管理员账号,但是此时的root账号还没有设置密码,现在我们来设置root用户密码

/usr/bin/mysqladmin -u root password 'new-password'  // 为root账号设置密码
或者mysqladmin -u root password 'new-password'

还可以直接执行mysql命令,在mysql命令行里面设置密码

mysql -u root

mysql> set password for root@localhost=password('在这里填入root密码');  ← 设置root密码

授权:

任何主机连接MySQL服务器

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;

指定主机连接mysql服务器

mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

mysql>FLUSH PRIVILEGES

设置完成后,执行exit命令退出

(2)创建数据库

用root用户登录

# mysql -u root -p 

mysql>输入root用户密码

mysql>create database mydb;

mysql>exit

(3)创建表或者导入数据

可以通过mysql命令创建表和插入数据,这里用命令导入我之前准备好的数据库表的sql脚本

mysql -u root -p 数据库名 <数据库脚本,然后输入密码,就会打印导入成功或者失败

将数据库中的数据导出

mysqldump -u root -p 数据库名 > 数据库脚本

3、安装nginx服务器

可以采用源码安装和yum安装,采用源码安装,不需要联网,yum安装必须要联网

yum install nginx -y

启动nginx

service nginx start 或者/etc/init.d/nginx start

配置nginx

cp /etc/nginx/nginx.conf  /etc/nginx/nginx.confbak    #备份原有配置文件
vi /etc/nginx/nginx.conf  #编辑
user  nginx  nginx;  #修改nginx运行账号为:nginx组的nginx用户

:wq!    #保存退出

cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.confbak   #备份原有配置文件
vi /etc/nginx/conf.d/default.conf   #编辑

index index.php index.html index.htm;   #增加index.php

 # pass the PHPscripts to FastCGI server listening on 127.0.0.1:9000
 #
 location ~ \.php$ {
   root          html;
   fastcgi_pass   127.0.0.1:9000;
   fastcgi_index  index.php;
   fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
   include       fastcgi_params;
 }
#取消FastCGI server部分location的注释,并要注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径

增加自定义接口(这里我在php服务打开8180用于自己的接口服务器)

server {
    listen       8180;
    root /home/api/wwwroot;

    charset utf-8;
    if (!-e $request_filename) {
        rewrite ^.*$ /index.php last;
    }
    #location / {
    #        index  index.php index.html index.htm;
    #}
    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;


    }
}


4、安装php服务器

安装php

yum install php -y

安装php组件,使php支持mysql、php支持FastCGI模式

yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt libmcrypt-devel php-fpm          #根据提示输入Y回车

配置php

vi /etc/php.ini   #编辑

date.timezone= PRC     #在946行 把前面的分号去掉,改为date.timezone = PRC

disable_functions=passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec

,proc_open,proc_get_status,ini_alter,ini_restore,dl,openlog,syslog,readlink

,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen

,disk_free_space,checkdnsrr,getservbyname,getservbyport,disk_total_space

,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid

,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp

,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid

,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid

,posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
#在386行 列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。
expose_php = Off        #在432行 禁止显示php版本的信息
magic_quotes_gpc = On   #在745行 打开magic_quotes_gpc来防止SQL注入
open_basedir = .:/tmp/  #在380行,设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站,如果改了之后安装程序有问题,可注销此行,或者直接写上程序目录路径/var/www/html/www.osyunwei.com/:/tmp/

配置php-fpm

cp /etc/php-fpm.d/www.conf   /etc/php-fpm.d/www.confbak   #备份原有配置文件
vi /etc/php-fpm.d/www.conf   #编辑
user = nginx   #修改用户为nginx
group = nginx   #修改组为nginx

/etc/init.d/mysqld restart  #重启MySql
/etc/init.d/nginx  restart  #重启nginx
/etc/rc.d/init.d/php-fpm  restart  #重启php-fpm

5、测试

cd /usr/share/nginx/html/   #进入nginx默认网站根目录
vi  index.php   #新建index.php文件

<?php
     phpinfo();

?>

:wq

在浏览器中输入ip进行访问

6、mongodb的安装

1、下载MongoDB(64位)

http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.9.tgz

http://pan.baidu.com/s/1mgyRB8c

2、安装MongoDB(安装到/usr/local)

复制代码
tar zxvf mongodb-linux-x86_64-2.4.9.tgz
mv mongodb-linux-x86_64-2.4.9 mongodb
cd mongodb
mkdir db
mkdir logs
cd bin
vi mongodb.conf
复制代码
dbpath=/usr/local/mongodb/db
logpath=/usr/local/mongodb/logs/mongodb.log
port=27017
fork=true
nohttpinterface=true

3、重新绑定mongodb的配置文件地址和访问IP

/usr/local/mongodb/bin/mongod --bind_ip localhost -f /usr/local/mongodb/bin/mongodb.conf

4、开机自动启动mongodb

vi /etc/rc.d/rc.local
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf

5、重启一下系统测试下能不能自启

#进入mongodb的shell模式 
/usr/local/mongodb/bin/mongo
#查看数据库列表 
show dbs
#当前db版本 
db.version();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值