LNMP(动态网站)
nginx(静态网站)
案例1:部署LNMP环境
步骤一:安装软件
yum -y install mariadb mariadb-server
yum -y install mariadb-devel
yum -y install php php-mysql
cd lnmp_soft
rpm -ivh php-fpm-5.4.16-36.el7_1.x86_64.rpm
启动服务
nginx
systemctl start php-fpm
systemctl start mariadb
LNMP
nginx----PHP(动静分离)
nginx判断用户访问的是静态还是动态
如果是静态,则在root对应的目录中找到页面直接给用户
如果是动态,则nginx将请求转发给9000端口
location匹配用户的地址栏(支持正则)
eg server {
listen 80;
server_name localhost;
location / {
root html;
}
location ~ .php$ {
pass 127.0.0.1:9000;
}
}
案例2:构建LNMP平台
vim /usr/local/nginx/conf/nginx.conf
location / {
root html;
index index.php index.html index.htm;
}
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi.conf;
}
/usr/local/nginx/sbin/nginx -s reload
创建PHP页面,测试LNMP架构能否解析PHP页面
1)创建PHP测试页面1:
[root@svr5 ~]# vim /usr/local/nginx/html/test1.php
<?php
$i="This is a test Page";
echo $i;
?>
http://192.168.4.5/test1.php
常见错误
File not found:没有权限
ls,权限【rwx,selinux,acl】
Connection refused:PHP没有启动
PHP Parse error:syntax error
PHP语法错误
location 下载页面
拷贝mysql模板
cd /root/lnmp_soft/php_scripts/
ls
cp mysql.php /usr/local/nginx/html/
地址重写
www.360buy.com ----> www.jd.com
格式:rewrite 旧地址 新地址 【选项】
last [地址变,不读其他rewrite]
break [地址变,不读其他语句,访问结束]
redirect [地址变]临时重定向
permament [地址变]永久重定向
支持正则
rewrite /a.html /b.html redirect;
修改Nginx服务配置
vim /usr/local/nginx/conf/nginx.conf
root html;
index index.html index.htm;(增加此行)
}
echo "B是大写的B" > /usr/local/nginx/html/b.html
访问192.168.4.5/a.html
rewrite ^/ http://www.tmooc.cn/;
使用uc访问是窄屏页面
使用ie访问是宽屏页面
mkdir /usr/local/nginx/htmlcurl
建立2个名字相同的网页
vim /usr/local/nginx/html/test.html
vim /usr/local/nginx/html/curl/test.html
vim /usr/local/nginx/conf/nginx.conf
if ($http_user_agent ~ curl){ //识别客户端curl浏览器
rewrite ^(.)$ /curl/$1;
}
#发现包含curl的就访问curl/
nginx -s reload
验证
curl http://192.168.4.5/test.html
firefox http://192.168.4.5/test.html
转载于:https://blog.51cto.com/13402239/2051816