PHP 开发环境之 Lnmp
文章目录
Install
-
Linux 一键搭建 Lnmp 环境
1 2
# 教程 https://github.com/licess/lnmp OR https://lnmp.org
-
MacOs 一键搭建 Lnmp 环境
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
# 教程 https://github.com/yeszao/dnmp # 常用命令 $ cd ~/dnmp $ docker-compose build # 镜像构建 $ docker-compose up -d # 创建并且后台运行方式启动所有容器 $ docker-compose up -d nginx php mysql # 创建并且已后台运行的方式启动nginx、php、mysql容器 $ docker-compose start php # 启动服务 $ docker-compose stop php # 停止服务 $ docker-compose restart php # 重启服务 $ docker-compose build php # 构建或者重新构建服务 $ docker-compose rm php # 删除并且停止php容器 $ docker-compose down # 停止并删除容器,网络,图像和挂载卷
配置文件
|
|
LNMP 日志文件
-
Nginx
- access log -> 记录用户、IP、访问页面以及其他信息
- error log -> 记录服务器错误信息
-
PHP
错误日志:/usr/local/error.log
-
MySQL
1 2 3 4 5 6 7 8 9 10 11
# 记录Mysql运行过程中的Error、Warning、Note等信息,系统出错或者某条记录出问题可以查看Error日志。 > show variables like "log_error"; # 记录mysql的日常日志,包括查询、修改、更新等的每条sql。 > show global variables like "%genera%" # Binary Log:每一条会修改数据的sql都会记录到master的binlog中,slave在复制的时候sql进程会解析成和原来master端执行多相同的sql再执行。 > show variables like "%log_bin%"; # Mysql 慢查询日志 > show variables like "%slow%";
Other
-
linux下apache获取root权限方法:
1 2 3 4 5 6 7
php中的exec函数可以执行很多命令(脚本)使用比较方便,但是在linux下需要给与权限。修改/etc/sudoers文件,做两处改动: <1>在文件中添加apache的用户,我用的apache2的用户名是www-data,有的是daemon、httpd等(查看一下自己的apache的配置文件即可)。添加的格式: www-data ALL=(ALL) NOPASSWD: ALL(格式在/etc/sudoer文件中有)。 <2>在exec()等系统命令调用函数中加入“sudo“(不需要密码) exec('sudo chmod 777 -R /var/spool/cron/crontabs/www-data');
-
nginx 只能处理静态页面,fastcgi 是 nginx 用来处理动态页面的,fpm 是处理 php 进程的。
-
php 操作命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
查看php进程: ps aux | grep php 启动命令:nohup /usr/local/php/sbin/php-fpm & php-fpm 关闭: 方案一: kill -INT `cat /usr/local/php/var/run/php-fpm.pid` [php-fpm.pid路径在php-fpm.conf配置文件中查看] 方案二: killall php-fpm php-fpm 重启: kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid` # 查找配置文件路径 locate php.ini # 查找 php 扩展 php -m | grep swoole # 查看 php 扩展版本 php --ri swoole
-
nginx 操作命令
1 2 3 4 5 6 7 8
启动命令: /usr/local/nginx/sbin/nginx 关闭命令: /usr/local/nginx/sbin/nginx -s stop 重启命令: /usr/local/nginx/sbin/nginx -t -- 检查修改后的配置是否正常运行 /usr/local/nginx/sbin/nginx -s reload -- 平滑重启
Nginx 是一款非常高性能的 HTTP 代理/反向代理服务器,服务开发中也经常使用它来做负载均衡。
Nginx 实现负载均衡的方式主要有三种(Nginx 通过 Upstream 模块实现负载均衡)
- 轮询
- 加权轮询
- IP Hash 轮询
-
mysql 操作命令
1 2
启动:service mysql start 或 /etc/init.d/mysql start 关闭:service mysql stop