
LNMP(Linux Nginx Mysql Php)是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写;Linux系统下Nginx+MySQL+PHP这种网站服务器架构。
四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。Nginx使用更少的资源,支持更多的并发连接,体现更高的效率;Nginx 既可以在内部直接支持Rails和PHP,也可以支持作为 HTTP代理服务器对外进行服务;Nginx 安装非常的简单,配置文件非常简洁(还能够支持perl语法);Nginx支持平滑加载新的配置,还能够在不间断服务的情况下进行软件版本的升级。
PHP官网:http://www.php.net/
PHP-FPM(FastCGl Process Manager:FastCG!进程管理器)是一个实现了Fastcgi的程序,并且提供进程管理的功能。进程包括master进程和worker进程。master进程只有一个,负责监听端口,接受来自web server的请求。worker进程一般会有多个,每个进程中会嵌入一个PHP解析器,进行PHP代码的处理。
PHP(Hypertext Preprocessor 超文本预处理器)是通用服务器端脚本编程语言,主要用于web开发实现动态web页面,也是最早实现将脚本嵌入HTML源码文档中的服务器端脚本语言之一。同时,php还提供了一个命令行接口,因此,其也可以在大多数系统上作为一个独立的shell来使用
Rasmus Lerdor于1994年开始开发PHP,最初是一组被Rasmus Lerdor称作“PersonalHome Page Too”的Per)脚本,可以用于显示作者的简历并记录用户对其网站的访问。后来,RasmusLerdorf使用C语言将这些Perl脚本重写为CG!程序,还为其增加了运行Web forms的能力以及与数据库交互的特性,并将其重命名为“Personal Home Page/Forms Interpreter”或“PHP/EI”。此时,PHP/F!已经可以用于开comp.infosystems.www.authoring.cgi Usenet讨论组,从此PHP开始走进人们的视野。1997年,其2.0版本发布
php的配置文件:/etc/php.ini,/etc/php.d/*.ini
配置文件在php解释器启动时被读取
- [foo]:Section Header
- directive = value
提示:较新的版本中,已经完全使用“ ; ” 进行注释
- expose_php = On
- #响应报文显示首部字段x-poered-by:PHP/x.y.z,暴露php版本,建议为off
-
- max_execution_time = 30
- #最长执行时间为30s
-
- memory_limit=128M
- #可调大
-
- display_errors=off
- #调试使用,不要打开,否则可能暴露重要信息
-
- display_startup_errors=off
- #建议关闭
-
- post_max_size=8M
- #最大上传数据大小,可能调大,比下面的项大
-
- upload_max_filesize=2M
- #最大上传文件,可能调大
-
- max_file_uploads = 20
- #同时上传最多文件数
-
- date.timezone = Asia/Shanghai
- #指定时区
-
- short_open_tag=on
- #开启短标签,如:<? phpinfo();?>
- cd /opt
-
- 上传nginx-1.22.0.tar.gz
-
- tar xf nginx-1.22.0.tar.gz
-
- cd nginx-1.22.0/
-
- yum -y install pcre-devel zlib-devel gcc gcc-c++ make
-
- useradd -M -s /sbin/nologin nginx
-
- ./configure \
- > --prefix=/usr/local/nginx \
- #指定nginx的安装路径
- > --user=nginx \
- #指定用户名
- > --group=nginx \
- #指定组名
- > --with-http_stub_status_module
- #启用http_stub_status_module 模块以支持状态统计
-
- make -j2
-
- make install
-
- ln -s /usr/local/nginx/sbin/nginx /usr/bin
- #让系统识别nginx的操作命令可以自动补全 nginx $PATH
-
-
- tee /lib/systemd/system/nginx.service <<eof
- > [Unit]
- > Description=nginx
- > After=network.target
- > [Service]
- > Type=forking
- > PIDFile=/usr/local/nginx/logs/nginx.pid
- > ExecStart=/usr/local/nginx/sbin/nginx
- > ExecReload=/bin/kill -1 $MAINPID
- > ExecStop=/bin/kill -3 $MAINPID
- > PrivateTmp=true
- > [Install]
- > WantedBy=multi-user.target
- > eof
-
-
- systemctl daemon-reload
-
- systemctl enable --now nginx.service
-
- systemctl status nginx


















初始化数据库





















nginx的主配置












友情提示:如果访问页面出现这样的情况,那就检查,有个服务没启动





















