Linux服务器即LNMP环境搭建(Git仓库上篇)

前言:上一篇写到Git仓库的搭建,有朋友说服务器还没搭建好,所以这里来一篇环境搭建的。

注:我搭建是Centos6版本以上的,Centos7以上有大的改变

一、配置防火墙,开启80端口、3306端口,删除原有的iptables ,添加合适的配置

rm -rf /etc/sysconfig/iptablesvim /etc/sysconfig/iptables

添加一下内容:

# Firewall configuration written by system-config-firewall# Manual customization of this file is not recommended.*filter:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT-A INPUT -p icmp -j ACCEPT-A INPUT -i lo -j ACCEPT-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT-A INPUT -j REJECT --reject-with icmp-host-prohibited-A FORWARD -j REJECT --reject-with icmp-host-prohibitedCOMMIT

:wq保存退出,重启防火墙使配置生效

/etc/init.d/iptables restart    centos 7.0以上执行  systemctl restart firewalld.service

关闭SELINUX

rm -rf  /etc/selinux/configvim /etc/selinux/config

然后添加一行内容:

SELINUX=disabled

:wq 保存退出

进行重启系统

shutdown -r now

注意:配置好防火墙必须重启系统

二、安装第三方yum源

安装下载工具

yum install wget

下载

wget http://www.atomicorp.com/installers/atomic

安装

sh ./atomic

更新yum源

yum check-update

三、安装Nginx

删除系统自带的软件包

yum remove httpd* php*

安装nginx

yum install -y nginx

设置nginx开机启动

chkconfig nginx on  Centos 7.0 以上执行 systemctlenablenginx.service

启动nginx

service nginx startCentos 7.0 以上 systemctl start  nginx.service

注:nginx启动可能失败,需要修改配置文件报错如下

Starting nginx:nginx:[emerg] socket() [::]:80 failed (97:Address family not supported by protocol)  [FAILED]

处理方法

vim /etc/nginx/conf.d/default.conf

listen      80 default_server;

listen      [::]:80 default_server;

改为:

listen      80;#listen      [::]:80 default_server;

保存退出:wq,重启成功

启动成功后,打开浏览器,输入ip地址,可看到nginx欢迎页

四、安装PHP

检查当前安装的PHP包

yum list installed | grep php

如果有安装的PHP包,先删除他们,如:

yum remove php.x86_64 php-cli.x86_64 php-common.x86_64

配置安装包源:

Centos 5.X

rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm

CentOs 6.x 

rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm

CentOs 7.X 

rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm 

rpm -Uvh  https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

注:不同版本服务器需要配置对应的安装包,如果想删除上面安装的包重新安装

rpm -qa | grep webstaticrpm-e[上面搜索到的包即可]

执行安装

yum -y install php56w.x86_64

yum -y --enablerepo=webtatic install php56w-devel

yum -y install php56w-gd.x86_64 php56w-ldap.x86_64  php56w-mbstring.x86_64 php56w-mcrypt.x86_64

yum -y install php56w-mysql.x86_64 php56w-pdo.x86_64 php56w-opcache.x86_64

注:每条命令看到Complete!才成功

安装PHP FPM

yum -y install php56w-fpm

设置php-fpm开机启动

chkconfig php-fpm onCentos7.0以上  systemctlenablephp-fpm.service

启动php-fpm

/etc/init.d/php-fpm startCentos 7.0 以上 systemctl start  php-fpm.service

注:如果想更换到php5.5或5.4版本,直接把上面的56w换成55w或者54w就可以了

五、 安装 MySQL

安装

yum install -y mysql mysql-server

启动MySQL

/etc/init.d/mysqld start

设为开机启动

chkconfig mysqld on

拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

为root用户设置密码

mysql_secure_installation

回车,根据提示输入Y,输入2次密码,回车,根据提示一路输入Y,最后出现:

Thanksforusing MySQL!

MySql密码设置完成,重新启动 MySQL:

#重启

/etc/init.d/mysqld restart

停止

/etc/init.d/mysqld stop

启动

/etc/init.d/mysqld start

六、配置nginx

我存放的nginx路径地址

[root@iZ2zeftluibm3hesz36v3tZ conf.d]# pwd/etc/nginx/conf.d

[root@iZ2zeftluibm3hesz36v3tZ conf.d]# lltotal 20-rw-r--r-- 1 root root 1501 Feb  9 10:54 admin.shop.conf-rw-r--r-- 1 root root  434 Dec 25 20:39 default.conf.bak-rw-r--r-- 1 root root 1419 Feb  8 17:19 web.shop.conf

因为nginx.conf里面

include /etc/nginx/conf.d/*.conf;

在/etc/nginx/conf.d下面新建一个.conf的文件 把这个东西复制进去 

 {              

      listen  80;       

       server_name    解析域名;           

     index index.php index.html index.htm default.html default.htm default.php;                          client_header_buffer_size 16k;            

  large_client_header_buffers 4 32k;            

  client_max_body_size 300m;             

 client_body_buffer_size 128k;           

   location / {                      

  root              项目路径;                        

index              index.php;                    

    proxy_connect_timeout 3000;                  

      proxy_send_timeout 3000;                 

       proxy_read_timeout 3000;                      

  proxy_buffer_size 4k;                     

   proxy_buffers 4 32k;                       

 proxy_busy_buffers_size 64k;

if(!-e$request_filename) {                      

  rewrite ^/index.php(.*)$ /index.php?s=$1last;                   

     rewrite ^(.*)$ /index.php?s=$1last;break;                                     

             }                     

     }           

   location ~ \.php$ {            

            root              项目路径;      

            fastcgi_pass  127.0.0.1:9000;   

             fastcgi_index  index.php;       

             fastcgi_param  SCRIPT_FILENAME$document_root$fastcgi_script_name;                                    include        fastcgi_params;                        

      }

}

:wq 保存退出

七、 配置php-fpm

vim /etc/php-fpm.d/www.conf

将用户和用户组设置为nginx,如:

修改用户为nginx

user = nginx

修改组为nginx

group = nginx

八、开始测试

cd/var/wwwvim index.php

添加以下代码


phpinfo();

?>

:wq!

保存退出

        #设置权限

chown nginx.nginx /var/www -R

        #重启nginx

service nginx restart

        #重启php-fpm

service php-fpm restart

这时你的mysql数据库不能远程连接的,此时你应该授权一下

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

注意:GRANT ALL PRIVILEGES表示授权所有权限,上面*.*中第一个*是授权可以访问的数据库名称, root是用户名, %表示授权所有的IP地址。

到这里就大致写完了,网上搭建服务器环境的很多,我也是综合各个前人经验,加入一些自己的理解,希望对有需要的朋友能有一点小小的帮助。这里推荐我上一篇Git版本库的搭建哦。

哈哈,知识在于分享,愿大家一块成长。

掘金地址:https://juejin.im/post/5a7d35625188257a5e5739a6

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容