动静分离的概念
动静分离的概念
针对PHP的动静分离
静态页面交给 Nginx处理
动态页面交给 PHP-FPM模块或 Apache处理
在 Nginx的配置中,是通过 ocation配置段配合正则匹配实现静态与动态页面的不同处理方式
Nginx负责静态解析,Apache负责动态网页解析。 Apache服务端:192.168.110.132 Nginx服务端:192.168.110.133 win 10 : 用于验证
根据需要,将配置 Nginx实现动静分离,对php页面的请求转发给LAMP处理,而静态页面交给Nginx处理,以实现动静分离
yum install httpd httpd-devel -y
systemctl start httpd.service
firewall-cmd --permanent --zone=public --add-service=http
success
firewall-cmd --permanent --zone=public --add-service=https
success
firewall-cmd --reload
success
yum install mariadb mariadb-server mariadb-libs mariadb-devel -y
systemctl start mariadb
mysql_secure_installation
yum -y install php
yum install php-mysql -y
yum install -y php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel php-bcmath '安装php插件'
cd /var/www/html
vim index.php
<?php
phpinfo();
?>
yum -y install gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl \
zlib-devel \
pcre
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
make install
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin
useradd -M -s /sbin/nologin nginx
vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile =/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/bin/kill -S HUP $MAINPID
ExecStop=/usr/bin/kill -S QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
chmod 754 /lib/systemd/system/nginx.service
vim /usr/local/nginx/conf/nginx.conf
location ~ \.php$ {
proxy_pass http://192.168.110.132;
}
'//proxy_pass :反向代理,请求重定向'
systemctl stop firewalld
setenforce 0
验证nginx的网页
其他主机访问 192.168.110.133/index.html (静态)
192.168.110.133/index.php (动态)
这里要部署前提要LNMP架构 安装php
[root@localhost php-fpm.d]# vim /usr/local/nginx/conf/nginx.conf ## 进入nginx文件 在server里面写
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name; ## 这里要注意路径
include fastcgi_params;
}