Nginx实现web架构

Nginx实现web架构

企业中网站架构

LNMP :linux Nginx MySQL PHP
LAMP :Linux Apache MySQL PHP
LNMT :Linux Nginx MySQL Tomcat
LAMT :Linux Apache MySQL Tomcat

Nginx
Apache
运行:html css js

PHP :运行php代码
Tomcat :运行java代码

部署PHP

# 1.卸载Linux自带的旧版本php
[root@web02 ~]# yum remove php-mysql-5.4 php php-fpm php-common
# 2.添加php第三方源
[root@web02 ~]# vim /etc/yum.repos.d/php.repo
[php-webtatic]
name = PHP Repository
baseurl = http://us-east.repo.webtatic.com/yum/el7/x86_64/
gpgcheck = 0
# 3.安装php
[root@web02 ~]# yum -y install php71w php71w-cli php71w-common php71w-devel php
71w-embedded php71w-gd php71w-mcrypt php71w-mbstring php71w-pdo php71w-xml php7
1w-fpm php71w-mysqlnd php71w-opcache php71w-pecl-memcached php71w-pecl-redis ph
p71w-pecl-mongodb
# 4.创建用户
[root@web02 ~]# groupadd www -g 666
[root@web02 ~]# useradd WWW -u 666 -g 666 -s /sbin/nologin -M
# 5.修改nginx运行用户
[root@web02 ~]# vim /etc/nginx/nginx.conf 
user  www;

php-fpm作用:用来管理php程序运行
# php相关配置文件
/etc/php-fpm.conf # php管理进程配置文件
/etc/php.ini # php程序配置文件
/etc/php-fpm.d/www.conf # php管理进程的子配置文件

# 6.修改php的启动用户
[root@web02 ~]# vim /etc/php-fpm.d/www.conf
user = www
group = www

# 7.启动php并加入开机自启
[root@web02 ~]# systemctl start php-fpm
[root@web02 ~]# systemctl enable php-fpm

# 8.检查php端口和进程

[root@web02 ~]# ps -ef |grep php
root      12841      1  0 15:48 ?        00:00:00 php-fpm: master process (/etcphp-fpm.conf)
www       12842  12841  0 15:48 ?        00:00:00 php-fpm: pool www
www       12843  12841  0 15:48 ?        00:00:00 php-fpm: pool www
www       12844  12841  0 15:48 ?        00:00:00 php-fpm: pool www
www       12845  12841  0 15:48 ?        00:00:00 php-fpm: pool www
www       12846  12841  0 15:48 ?        00:00:00 php-fpm: pool www
root      12876  12624  0 15:50 pts/0    00:00:00 grep --color=auto php

[root@web02 ~]# netstat -lntup |grep php
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      12841/php-fpm: mast

配置nginx连接php

[root@web02 ~]# vim /etc/nginx/conf.d/kaoshi.conf 
server{
        listen 80 ;
        server_name 10.0.0.8;
        location /{
                root /movie;
                index index.php index.html;

        }



        location ~ \.php$ {
                root /movie;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include /etc/nginx/fastcgi_params;

        }
}

# 创建站点目录
[root@web02 ~]# mkdir /movie

# 将压缩包放入站点目录并解压

# 修改站点目录属主和属组
[root@web02 ~]# chown www.www /movie

部署wordpress

# 1.编辑nginx配置文件
[root@web01 ~]# vim /etc/nginx/conf.d/blog.zh.com.conf
server{
        listen 80;
        server_name blog.zh.com;
        location /{
                root /blog;
                index index.php index.html;

        }
        location ~ /.php$ {
                root /blog;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name
;
                include /etc/nginx/fastcgi_params;

        }
}

# 2.重新加载nginx
[root@web01 ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@web01 ~]# systemctl reload nginx

# 3.创建站点目录并授权
[root@web01 ~]# mkdir /blog

# 4.测试nginx连接php (编写php info代码)
[root@web01 ~]# vim /blog/info.php
<?php
        phpinfo();
?>

# 5.windows域名解析
win + r + drivers
10.0.0.7  blog.zh.com

# 6打开浏览器访问 hppt://blog.zh.com/info.php

# 7.下载wordpress代码
wordpress官网:https://wordpress.org/
[root@web01 blog]# wget https://cn.wordpress.org/latest-zh_CN.tar.gz 

# 8.解压代码
[root@web01 blog]# tar xf latest-zh_CN.tar.gz

# 9.修改配置文件
[root@web01 blog]# vim /etc/nginx/conf.d/blog.zh.com.conf 
server{
        listen 80;
        server_name blog.zh.com;
        root /blog/wordpress;
        location /{
                index index.php index.html;

        }
        location ~ \.php$ {
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name
;
                include /etc/nginx/fastcgi_params;

        }

}   


# 10.重新加载配置文件并修改权限
[root@web01 blog]# systemctl reload nginx
[root@web01 blog]# chown -R www.www /blog/wordpress/

# 在浏览器访问:http://blog.zh.com/

安装数据库

# 数据库是C/S结构
# 默认端口:3306

# 1.安装mariadb
[root@web01 blog]# yum -y install mariadb-server

# 2.启动数据库并加入到开机自启
[root@web01 blog]# systemctl start mariadb
[root@web01 blog]# systemctl enable mariadb

# 3.登录数据库
[root@web01 blog]# systemctl enable mariadb

# 4.查看所有库
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.00 sec)

# 5.切换数据库
MariaDB [(none)]> use mysql

# 6.查看数据库中所有表
MariaDB [mysql]> show tables;

# 7.创建数据库
MariaDB [(none)]> create database wordpress;

# 8.创建用户
MariaDB [(none)]>  grant all on *.* to wp@'localhost' identified by '123';

# 9.查看用户

MariaDB [(none)]> select user,host from mysql.user;
+------+-----------+
| user | host      |
+------+-----------+
| root | 127.0.0.1 |
| root | ::1       |
|      | localhost |
| root | localhost |
| wp   | localhost |
|      | web01     |
| root | web01     |
+------+-----------+
7 rows in set (0.00 sec)

# 10.退出数据库
exit
quit 
\q


数据库的名字 :wordpress
连接用户名字 :wp
连接密码 :123
连接IP :localhost

修改鼠标样式

[root@web01 themes]# cd /blog/wordpress/wp-content/themes/
[root@web01 themes]# wget http://test.driverzeng.com/Nginx_Code/QQ2.8.zip
[root@web01 themes]# cd QQ2.8/

[root@web01 QQ2.8]# vim header.php 
<script type="text/javascript"> 
/* 鼠标特效 */ 
$(function() { 
	var a_idx = 0, 
		b_idx = 0; 
	c_idx = 0; 
	jQuery(document).ready(function($) { 
		$("body").click(function(e) { 
			var a = new Array("苍井空", "武藤兰", "小泽玛利亚","泷泽萝拉", "波多野结衣", "吉泽 明步", "西野翔", "饭岛爱", "天海翼", "邱老师" ,"麻生希", "绫濑遥", "滨崎步", "黑木瞳", "由加 奈"),
				b = new Array("#09ebfc", "#ff6651", "#ffb351", "#51ff65", "#5197ff", "#a551ff", "#ff51f7", "#ff518e", "#ff5163", "#efff51"), 
				c = new Array("12", "14", "16", "18", "20", "22", "24", "26", "28", "30"); 
			var $i = $("<span/>").text(a[a_idx]); 
			a_idx = (a_idx + 1) % a.length; 
			b_idx = (b_idx + 1) % b.length; 
			c_idx = (c_idx + 1) % c.length; 
			var x = e.pageX, 
				y = e.pageY; 
			$i.css({ 
				"z-index": 999, 
				"top": y - 20, 
				"left": x, 
				"position": "absolute", 
				"font-weight": "bold", 
				"font-size": c[c_idx] + "px", 
				"color": b[b_idx] 
			});
			$("body").append($i); 
			$i.animate({ 
				"top": y - 180, 
				"opacity": 0 
			}, 1500, function() { 
				$i.remove(); 
			}); 
		}); 
	}); 
	var _hmt = _hmt || []; 
})
</script>


优化nginx上传大小

# 在http层添加配置
[root@web01 QQ2.8]# vim /etc/nginx/nginx.conf 
client_max_body_size 8m;
posted @   FYytfg  阅读(78)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示