linux博客的搭建lnmp 博客园搭建,基于LNMP的小米电商网站搭建——运维实战手记第一篇...

分享一篇文章,来自马哥教育学员阿龙。

5f675eababae507e067d0429a589bfc0.png

总项目流程图,详见Linux运维企业架构实战系列 - 阿龙along - 博客园

实战一:搭建lnmp及类小米等商业网站的实现

环境:关闭防火墙,selinux

1、安装包,开启服务yum -y install nginx mariadb-server php-fpm php-mysql

systemctl start nginx

systemctl start mariadb

systemctl start php-fpm

2、修改nginx的配置文件

(1)cp /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf 有个模板例子覆盖了配置文件

vim /etc/nginx/nginx.conf 修改下面几类① user  nobody;   使用用户

error_log  /var/log/nginx/error.log  info;   错误日志

② events {

worker_connections  65535;

}

③ tcp_nopush     on;     tcp优化

tcp_nodelay    on;

gzip  on;

④ server {

listen       80;

server_name  xiaomi.along.com;   根据自己顺便写

root    /data/web;   主站点的目录根

location / {

index  index.php index.html index.htm;

}

⑤ location ~ \.php$ {      开启.php,配置文件有例子,只需去掉注释,修改一行即可

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

include        fastcgi_params;

}

(2)修改完,可以nginx -t 查看

systemctl restart nginx 重启服务,发现有warn

(3)ulimit -n 查看linux系统里打开文件描述符的最大值,一般缺省值是1024,对一台繁忙的服务器来说,这个值偏小,所以有必要重新设置linux系统里打开文件描述符的最大值ulimit -n 65535 修改内核参数

3、修改php-fpm的配置文件

① vim /etc/php.ini 改两行date.timezone = Asia/Shanghai   时区

short_open_tag = On    允许短标签

② vim /etc/php-fpm.d/www.conf 改两行user = nobody

group = nobody

③ systemctl restart php-fpm

4、运行mysql ,创建一会网页需要的库create database xiaomi;

5、把事先找好的小米网站传进来 rz

小米网站的源码资源我已经上传到网盘了http://pan.baidu.com/s/1kUUFp6B ,需要的私密我mkdir /data/web -p 创建一个目录专门放小米的网页配置

unzip -d /data/web/ xiaomi.zip 解压到目录

cd /data/web/

chown -R nobody.nobody * 为了安全,递归把所有文件的所属人和所属组改为权限有限的nobody

6、网页登录

① 用户:admin

密码:123456

dbd1d340a0ef7e529d97c24550908eda.png

② 参数设置:就是连接上自己的数据库

663c602b60c22bf176e53e1dc04336fa.png

也可以在命令行连上自己的数据库:vim /data/web/data/config.php

cf99859c939cf75ddc8b2cef3d15cb8b.png

③ 把数据写到数据库中,恢复数据

c580ef10c4b86d93360b8f6b30d8c893.png

7、实验成功,登录查看

11af07ffacbe096a705e0e056ee15a10.png

后台登录,可以自己随便修改

2a6addf053cb9f2fc267f8819564181d.png

8、ab 可以压力测试ab -c 100 -n 1000  http://192.168.30.107/

实验二:实现ssl 加密

(1)一个物理服务器设置一个https

1、创建存放证书的目录mkdir /etc/nginx/ssl

2、自签名证书cd /etc/pki/tls/certs/

make nginx.crt

e8c75a43733d479c19eb8758b868dfb4.pngopenssl rsa -in nginx.key -out nginx2.key 因为刚私钥被加密了,为了后边方便,解密

3、把证书和私钥cp 到nginx存放证书目录cp nginx.crt nginx2.key /etc/nginx/ssl/

cd /etc/nginx/ssl/

mv nginx2.key nginx.key 把名字改回来

4、修改配置文件,加一段serverserver {

listen 443 ssl;

server_name www.along.com;

ssl on;

ssl_certificate /etc/nginx/ssl/nginx.crt;

ssl_certificate_key /etc/nginx/ssl/nginx.key;

ssl_session_cache shared:sslcache:20m;

ssl_session_timeout 10m;

}

59679852e081c91ce4badcd7cb2dc4f0.png

5、测试,网页打开 https://192.168.30.7/

aa52f6e19b01d0e2ebb40b19f71ece24.png

windows 信任证书

ec00da03476a3eca74c790865548ff2b.png

(2)因为nginx 强大,可以实现多个虚拟主机基于不同的FQDN 实现ssl加密,httpd不能实现

一个物理服务器设置多个https

1、生成3个证书和私钥make nginx.crt

make nginx2.crt

make nginx3.crt

c15d70db6bad2a8a86f0784cd6bfca4a.png

2、把证书和私钥cp 到nginx存放证书目录,并解开私钥的加密cp nginx{1,2,3}* /etc/nginx/ssl/

openssl rsa -in nginx.key -out nginx.key

openssl rsa -in nginx2.key -out nginx2.key

openssl rsa -in nginx3.key -out nginx3.key

3、创建各自对应的访问网页mkdir /app/website{1,2,3}

echo website1 > /app/website1/index.html

echo website1 > /app/website2/index.html

echo website1 > /app/website3/index.html

629c76e9d422246dfc46258091ae77d4.png

4、测试访问,成功

实战三:实现身份验证

1、生成密码账户文件cd /etc/nginx/conf.d

htpasswd -c -m .htpasswd http1

htpasswd -m .htpasswd http2

3ae2b15087223b810b193c875ed34692.png

2、在配置文件中修改

vim /etc/nginx/nginx.conf 在location段中指向账户密码文件location /images {

auth_basic "images site"; "提示字"  auth_basic_user_file /etc/nginx/conf.d/.htpasswd;

}

b61d318b557cf10b95347b873e6b5c42.png

3、网页查看验证 http://172.17.22.22/images/loading.gif

d8c990d1b78a4ab4c1f687776b24d8c7.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值