一.动态网架架构
资源
资源文件识别 语言识别 框架识别
index.php 开源的php Windows/Linux+nginx+php+mysql
index.py 开源python Windows/Linux+apache+python+mysql
index.jsp 商业JAVA windows/Linux+tomcat+JDK+Oracle
index.asp 商业c# Windows+iis+asp.net+sql-server/oracle/mogodb
二.LNMP动态网站环境部署
1.LINUX部署
关闭防火墙
systemctl stop firewalld
setenforce 0
2.Nginx部署
先官网配置nginx源略(我的前面博客有)
在yum -y install nginx
3.php-fpm部署
部署方法(2选1)
RPM部署
1<span class="token punctuation">.</span>yum install <span class="token operator">-</span>y php<span class="token operator">-</span>fpm php<span class="token operator">-</span>mysql php<span class="token operator">-</span>gd php<span class="token operator">-</span>fpm:php接收动态请求的程序 php<span class="token operator">-</span>mysql:php链接mysql的程序 php<span class="token operator">-</span>gd:图形库程序(GD库可以处理图片,或者生成图片) php<span class="token operator">-</span>mysql 安装不上的话,可以进行以下操作 先下载 mysql<span class="token operator">-</span>community<span class="token operator">-</span>libs<span class="token operator">-</span>compat<span class="token operator">-</span>5<span class="token punctuation">.</span>7<span class="token punctuation">.</span>29<span class="token operator">-</span>1<span class="token punctuation">.</span>el7<span class="token punctuation">.</span>x86_64 安装上这个再安装php<span class="token operator">-</span>mysql 2<span class="token punctuation">.</span>systemctl restart php<span class="token operator">-</span>fpm systemctl enable php<span class="token operator">-</span>fpm 启动 3<span class="token punctuation">.</span>netstat <span class="token operator">-</span>anpt <span class="token punctuation">|</span> grep 9000 查看端口 4<span class="token punctuation">.</span>vim <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span>index<span class="token punctuation">.</span>php <?php phpinfo<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> ?> 测试语句 5<span class="token punctuation">.</span>vim <span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>conf<span class="token punctuation">.</span>d<span class="token operator">/</span>default<span class="token punctuation">.</span>conf 增加PHP主页名称:index<span class="token punctuation">.</span>php server <span class="token punctuation">{<!-- --></span> location <span class="token operator">/</span> <span class="token punctuation">{<!-- --></span> <span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span> index index<span class="token punctuation">.</span>php index<span class="token punctuation">.</span>html<span class="token punctuation">;</span> <span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> 6<span class="token punctuation">.</span>vim <span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>conf<span class="token punctuation">.</span>d<span class="token operator">/</span>default<span class="token punctuation">.</span>conf 启动nginx_fastcgi功能,解除 server <span class="token punctuation">{<!-- --></span> location <span class="token operator">/</span> <span class="token punctuation">{<!-- --></span> index index<span class="token punctuation">.</span>php<span class="token punctuation">;</span> <span class="token punctuation">}</span> location ~ \<span class="token punctuation">.</span>php$ <span class="token punctuation">{<!-- --></span> root <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token punctuation">;</span> fastcgi_pass 127<span class="token punctuation">.</span>0<span class="token punctuation">.</span>0<span class="token punctuation">.</span>1:9000<span class="token punctuation">;</span> fastcgi_index index<span class="token punctuation">.</span>php<span class="token punctuation">;</span> fastcgi_param SCRIPT_FILENAME <span class="token variable">$document_root</span><span class="token variable">$fastcgi_script_name</span><span class="token punctuation">;</span> include fastcgi_params<span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> fastcgi_param:这个配置的意思是 在浏览器中访问的<span class="token punctuation">.</span>php文件,实际读取的是 <span class="token variable">$document_root</span><span class="token punctuation">(</span>网站根目录<span class="token punctuation">)</span>下的<span class="token punctuation">.</span>php文件 <span class="token operator">--</span> 也就是说当访问127<span class="token punctuation">.</span>0<span class="token punctuation">.</span>0<span class="token punctuation">.</span>1<span class="token operator">/</span>index<span class="token punctuation">.</span>php的时候,需要读取网站根目录下面的index<span class="token punctuation">.</span>php文件,如果没有配置这一配置项时,nginx不回去网站根目录下访问<span class="token punctuation">.</span>php文件,所以返回空白。 通过location指令,将所有以php为后缀的文件都交给127<span class="token punctuation">.</span>0<span class="token punctuation">.</span>0<span class="token punctuation">.</span>1:9000来处理,而这里的IP地址和端口就是FastCGI进程监听的IP地址和端口。 fastcgi_param指令指定放置PHP动态程序的主目录,也就是<span class="token variable">$fastcgi_script_name</span>前面指定的路径,这里是<span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>nginx<span class="token operator">/</span>html目录,建议将这个目录与Nginx虚拟主机指定的根目录保持一致,当然也可以不一致。 fastcgi_params文件是FastCGI进程的一个参数配置文件,在安装Nginx后,会默认生成一个这样的文件,这里通过include指令将FastCGI参数配置文件包含了进来。 接下来,启动nginx服务。 <span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>nginx<span class="token operator">/</span>sbin<span class="token operator">/</span>nginx 到此为止,Nginx<span class="token operator">+</span>PHP已经配置完成。 systemctl restart nginx 重启 http:<span class="token operator">/</span><span class="token operator">/</span>192<span class="token punctuation">.</span>168<span class="token punctuation">.</span>152<span class="token punctuation">.</span>157<span class="token operator">/</span>index<span class="token punctuation">.</span>php 测试结果1<span class="token punctuation">.</span>yum install <span class="token operator">-</span>y php<span class="token operator">-</span>fpm php<span class="token operator">-</span>mysql php<span class="token operator">-</span>gd php<span class="token operator">-</span>fpm:php接收动态请求的程序 php<span class="token operator">-</span>mysql:php链接mysql的程序 php<span class="token operator">-</span>gd:图形库程序(GD库可以处理图片,或者生成图片) php<span class="token operator">-</span>mysql 安装不上的话,可以进行以下操作 先下载 mysql<span class="token operator">-</span>community<span class="token operator">-</span>libs<span class="token operator">-</span>compat<span class="token operator">-</span>5<span class="token punctuation">.</span>7<span class="token punctuation">.</span>29<span class="token operator">-</span>1<span class="token punctuation">.</span>el7<span class="token punctuation">.</span>x86_64 安装上这个再安装php<span class="token operator">-</span>mysql 2<span class="token punctuation">.</span>systemctl restart php<span class="token operator">-</span>fpm systemctl enable php<span class="token operator">-</span>fpm 启动 3<span class="token punctuation">.</span>netstat <span class="token operator">-</span>anpt <span class="token punctuation">|</span> grep 9000 查看端口 4<span class="token punctuation">.</span>vim <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span>index<span class="token punctuation">.</span>php <?php phpinfo<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> ?> 测试语句 5<span class="token punctuation">.</span>vim <span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>conf<span class="token punctuation">.</span>d<span class="token operator">/</span>default<span class="token punctuation">.</span>conf 增加PHP主页名称:index<span class="token punctuation">.</span>php server <span class="token punctuation">{<!-- --></span> location <span class="token operator">/</span> <span class="token punctuation">{<!-- --></span> <span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span> index index<span class="token punctuation">.</span>php index<span class="token punctuation">.</span>html<span class="token punctuation">;</span> <span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> 6<span class="token punctuation">.</span>vim <span class="token operator">/</span>etc<span class="token operator">/</span>nginx<span class="token operator">/</span>conf<span class="token punctuation">.</span>d<span class="token operator">/</span>default<span class="token punctuation">.</span>conf 启动nginx_fastcgi功能,解除 server <span class="token punctuation">{<!-- --></span> location <span class="token operator">/</span> <span class="token punctuation">{<!-- --></span> index index<span class="token punctuation">.</span>php<span class="token punctuation">;</span> <span class="token punctuation">}</span> location ~ \<span class="token punctuation">.</span>php$ <span class="token punctuation">{<!-- --></span> root <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token punctuation">;</span> fastcgi_pass 127<span class="token punctuation">.</span>0<span class="token punctuation">.</span>0<span class="token punctuation">.</span>1:9000<span class="token punctuation">;</span> fastcgi_index index<span class="token punctuation">.</span>php<span class="token punctuation">;</span> fastcgi_param SCRIPT_FILENAME <span class="token variable">$document_root</span><span class="token variable">$fastcgi_script_name</span><span class="token punctuation">;</span> include fastcgi_params<span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> fastcgi_param:这个配置的意思是 在浏览器中访问的<span class="token punctuation">.</span>php文件,实际读取的是 <span class="token variable">$document_root</span><span class="token punctuation">(</span>网站根目录<span class="token punctuation">)</span>下的<span class="token punctuation">.</span>php文件 <span class="token operator">--</span> 也就是说当访问127<span class="token punctuation">.</span>0<span class="token punctuation">.</span>0<span class="token punctuation">.</span>1<span class="token operator">/</span>index<span class="token punctuation">.</span>php的时候,需要读取网站根目录下面的index<span class="token punctuation">.</span>php文件,如果没有配置这一配置项时,nginx不回去网站根目录下访问<span class="token punctuation">.</span>php文件,所以返回空白。 通过location指令,将所有以php为后缀的文件都交给127<span class="token punctuation">.</span>0<span class="token punctuation">.</span>0<span class="token punctuation">.</span>1:9000来处理,而这里的IP地址和端口就是FastCGI进程监听的IP地址和端口。 fastcgi_param指令指定放置PHP动态程序的主目录,也就是<span class="token variable">$fastcgi_script_name</span>前面指定的路径,这里是<span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>nginx<span class="token operator">/</span>html目录,建议将这个目录与Nginx虚拟主机指定的根目录保持一致,当然也可以不一致。 fastcgi_params文件是FastCGI进程的一个参数配置文件,在安装Nginx后,会默认生成一个这样的文件,这里通过include指令将FastCGI参数配置文件包含了进来。 接下来,启动nginx服务。 <span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>nginx<span class="token operator">/</span>sbin<span class="token operator">/</span>nginx 到此为止,Nginx<span class="token operator">+</span>PHP已经配置完成。 systemctl restart nginx 重启 http:<span class="token operator">/</span><span class="token operator">/</span>192<span class="token punctuation">.</span>168<span class="token punctuation">.</span>152<span class="token punctuation">.</span>157<span class="token operator">/</span>index<span class="token punctuation">.</span>php 测试结果1.yum install -y php-fpm php-mysql php-gd php-fpm:php接收动态请求的程序 php-mysql:php链接mysql的程序 php-gd:图形库程序(GD库可以处理图片,或者生成图片) php-mysql 安装不上的话,可以进行以下操作 先下载 mysql-community-libs-compat-5.7.29-1.el7.x86_64 安装上这个再安装php-mysql 2.systemctl restart php-fpm systemctl enable php-fpm 启动 3.netstat -anpt | grep 9000 查看端口 4.vim /usr/share/nginx/html/index.php <?php phpinfo(); ?> 测试语句 5.vim /etc/nginx/conf.d/default.conf 增加PHP主页名称:index.php server { location / { ... index index.php index.html; ... } } 6.vim /etc/nginx/conf.d/default.conf 启动nginx_fastcgi功能,解除 server { location / { index index.php; } location ~ \.php$ { root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } fastcgi_param:这个配置的意思是 在浏览器中访问的.php文件,实际读取的是 $document_root(网站根目录)下的.php文件 -- 也就是说当访问127.0.0.1/index.php的时候,需要读取网站根目录下面的index.php文件,如果没有配置这一配置项时,nginx不回去网站根目录下访问.php文件,所以返回空白。 通过location指令,将所有以php为后缀的文件都交给127.0.0.1:9000来处理,而这里的IP地址和端口就是FastCGI进程监听的IP地址和端口。 fastcgi_param指令指定放置PHP动态程序的主目录,也就是$fastcgi_script_name前面指定的路径,这里是/usr/local/nginx/html目录,建议将这个目录与Nginx虚拟主机指定的根目录保持一致,当然也可以不一致。 fastcgi_params文件是FastCGI进程的一个参数配置文件,在安装Nginx后,会默认生成一个这样的文件,这里通过include指令将FastCGI参数配置文件包含了进来。 接下来,启动nginx服务。 /usr/local/nginx/sbin/nginx 到此为止,Nginx+PHP已经配置完成。 systemctl restart nginx 重启 http://192.168.152.157/index.php 测试结果
2.源码部署
部署PHP<span class="token operator">-</span>fpm 1<span class="token punctuation">.</span> 以php<span class="token operator">-</span>fpm的方式安装php <span class="token namespace">[root@tianyun ~]</span> libxml2 libxml2<span class="token operator">-</span>devel libcurl libcurl<span class="token operator">-</span>devel libxslt<span class="token operator">-</span>devel openssl<span class="token operator">-</span>devel <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[root@webserver ~]</span> <span class="token operator">--</span>prefix=<span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>php \ <span class="token operator">--</span>with<span class="token operator">-</span>curl \ <span class="token operator">--</span>with<span class="token operator">-</span>freetype<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>gd \ <span class="token operator">--</span>with<span class="token operator">-</span>gettext \ <span class="token operator">--</span>with<span class="token operator">-</span>iconv<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>jpeg<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>kerberos \ <span class="token operator">--</span>with<span class="token operator">-</span>libdir=lib64 \ <span class="token operator">--</span>with<span class="token operator">-</span>libxml<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>mysql \ <span class="token operator">--</span>with<span class="token operator">-</span>mysqli \ <span class="token operator">--</span>with<span class="token operator">-</span>openssl \ <span class="token operator">--</span>with<span class="token operator">-</span>pcre<span class="token operator">-</span>regex \ <span class="token operator">--</span>with<span class="token operator">-</span>pdo<span class="token operator">-</span>mysql \ <span class="token operator">--</span>with<span class="token operator">-</span>pdo<span class="token operator">-</span>sqlite \ <span class="token operator">--</span>with<span class="token operator">-</span>pear \ <span class="token operator">--</span>with<span class="token operator">-</span>png<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>xmlrpc \ <span class="token operator">--</span>with<span class="token operator">-</span>xsl \ <span class="token operator">--</span>with<span class="token operator">-</span>zlib \ <span class="token operator">--</span>enable<span class="token operator">-</span>fpm \ <span class="token operator">--</span>enable<span class="token operator">-</span>bcmath \ <span class="token operator">--</span>enable<span class="token operator">-</span>libxml \ <span class="token operator">--</span>enable<span class="token operator">-</span>inline<span class="token operator">-</span>optimization \ <span class="token operator">--</span>enable<span class="token operator">-</span>gd<span class="token operator">-</span>native<span class="token operator">-</span>ttf \ <span class="token operator">--</span>enable<span class="token operator">-</span>mbregex \ <span class="token operator">--</span>enable<span class="token operator">-</span>mbstring \ <span class="token operator">--</span>enable<span class="token operator">-</span>opcache \ <span class="token operator">--</span>enable<span class="token operator">-</span>pcntl \ <span class="token operator">--</span>enable<span class="token operator">-</span>shmop \ <span class="token operator">--</span>enable<span class="token operator">-</span>soap \ <span class="token operator">--</span>enable<span class="token operator">-</span>sockets \ <span class="token operator">--</span>enable<span class="token operator">-</span>sysvsem \ <span class="token operator">--</span>enable<span class="token operator">-</span>xml \ <span class="token operator">--</span>enable<span class="token operator">-</span>zip <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> 2<span class="token punctuation">.</span> php<span class="token operator">-</span>fpm配置文件(影响php处理php程序的性能,例如php进程数、最大连接数配置等,运维人员关注) <span class="token namespace">[root@webserver php-5.6.29]</span> 3<span class="token punctuation">.</span> php置文件(影响php代码,例如允许客户端最大上传文件的大小,设置的timezone,php所支持的扩展功能例如是否可以连接MySQL、Memcache,程序员关注) <span class="token namespace">[root@webserver php-5.6.29]</span> 4<span class="token punctuation">.</span> init script centos6 <span class="token punctuation">[</span>可选<span class="token punctuation">]</span>centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 c <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> Starting php<span class="token operator">-</span>fpm done 4<span class="token punctuation">.</span> Systemd Script centos7 <span class="token punctuation">[</span>可选<span class="token punctuation">]</span> <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[Unit]</span> Description=The PHP FastCGI <span class="token keyword">Process</span> Manager After=syslog<span class="token punctuation">.</span>target network<span class="token punctuation">.</span>target <span class="token namespace">[Service]</span> <span class="token function">Type</span>=simple PIDFile=<span class="token operator">/</span>run<span class="token operator">/</span>php<span class="token operator">-</span>fpm<span class="token punctuation">.</span>pid ExecStart=<span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>php<span class="token operator">/</span>sbin<span class="token operator">/</span>php<span class="token operator">-</span>fpm <span class="token operator">--</span>nodaemonize <span class="token operator">--</span>fpm<span class="token operator">-</span>config <span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>php<span class="token operator">/</span>etc<span class="token operator">/</span>php<span class="token operator">-</span>fpm<span class="token punctuation">.</span>conf ExecReload=<span class="token operator">/</span>bin<span class="token operator">/</span><span class="token function">kill</span> <span class="token operator">-</span>USR2 <span class="token variable">$MAINPID</span> ExecStop=<span class="token operator">/</span>bin<span class="token operator">/</span><span class="token function">kill</span> <span class="token operator">-</span>SIGINT <span class="token variable">$MAINPID</span> <span class="token namespace">[Install]</span> WantedBy=multi<span class="token operator">-</span>user<span class="token punctuation">.</span>target <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[root@localhost ~]</span> tcp LISTEN 0 128 127<span class="token punctuation">.</span>0<span class="token punctuation">.</span>0<span class="token punctuation">.</span>1:9000 <span class="token operator">*</span>:<span class="token operator">*</span> tcp LISTEN 0 128 <span class="token operator">*</span>:80 <span class="token operator">*</span>:<span class="token operator">*</span>部署PHP<span class="token operator">-</span>fpm 1<span class="token punctuation">.</span> 以php<span class="token operator">-</span>fpm的方式安装php <span class="token namespace">[root@tianyun ~]</span> libxml2 libxml2<span class="token operator">-</span>devel libcurl libcurl<span class="token operator">-</span>devel libxslt<span class="token operator">-</span>devel openssl<span class="token operator">-</span>devel <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[root@webserver ~]</span> <span class="token operator">--</span>prefix=<span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>php \ <span class="token operator">--</span>with<span class="token operator">-</span>curl \ <span class="token operator">--</span>with<span class="token operator">-</span>freetype<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>gd \ <span class="token operator">--</span>with<span class="token operator">-</span>gettext \ <span class="token operator">--</span>with<span class="token operator">-</span>iconv<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>jpeg<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>kerberos \ <span class="token operator">--</span>with<span class="token operator">-</span>libdir=lib64 \ <span class="token operator">--</span>with<span class="token operator">-</span>libxml<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>mysql \ <span class="token operator">--</span>with<span class="token operator">-</span>mysqli \ <span class="token operator">--</span>with<span class="token operator">-</span>openssl \ <span class="token operator">--</span>with<span class="token operator">-</span>pcre<span class="token operator">-</span>regex \ <span class="token operator">--</span>with<span class="token operator">-</span>pdo<span class="token operator">-</span>mysql \ <span class="token operator">--</span>with<span class="token operator">-</span>pdo<span class="token operator">-</span>sqlite \ <span class="token operator">--</span>with<span class="token operator">-</span>pear \ <span class="token operator">--</span>with<span class="token operator">-</span>png<span class="token operator">-</span><span class="token function">dir</span> \ <span class="token operator">--</span>with<span class="token operator">-</span>xmlrpc \ <span class="token operator">--</span>with<span class="token operator">-</span>xsl \ <span class="token operator">--</span>with<span class="token operator">-</span>zlib \ <span class="token operator">--</span>enable<span class="token operator">-</span>fpm \ <span class="token operator">--</span>enable<span class="token operator">-</span>bcmath \ <span class="token operator">--</span>enable<span class="token operator">-</span>libxml \ <span class="token operator">--</span>enable<span class="token operator">-</span>inline<span class="token operator">-</span>optimization \ <span class="token operator">--</span>enable<span class="token operator">-</span>gd<span class="token operator">-</span>native<span class="token operator">-</span>ttf \ <span class="token operator">--</span>enable<span class="token operator">-</span>mbregex \ <span class="token operator">--</span>enable<span class="token operator">-</span>mbstring \ <span class="token operator">--</span>enable<span class="token operator">-</span>opcache \ <span class="token operator">--</span>enable<span class="token operator">-</span>pcntl \ <span class="token operator">--</span>enable<span class="token operator">-</span>shmop \ <span class="token operator">--</span>enable<span class="token operator">-</span>soap \ <span class="token operator">--</span>enable<span class="token operator">-</span>sockets \ <span class="token operator">--</span>enable<span class="token operator">-</span>sysvsem \ <span class="token operator">--</span>enable<span class="token operator">-</span>xml \ <span class="token operator">--</span>enable<span class="token operator">-</span>zip <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> 2<span class="token punctuation">.</span> php<span class="token operator">-</span>fpm配置文件(影响php处理php程序的性能,例如php进程数、最大连接数配置等,运维人员关注) <span class="token namespace">[root@webserver php-5.6.29]</span> 3<span class="token punctuation">.</span> php置文件(影响php代码,例如允许客户端最大上传文件的大小,设置的timezone,php所支持的扩展功能例如是否可以连接MySQL、Memcache,程序员关注) <span class="token namespace">[root@webserver php-5.6.29]</span> 4<span class="token punctuation">.</span> init script centos6 <span class="token punctuation">[</span>可选<span class="token punctuation">]</span>centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 c <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> <span class="token namespace">[root@webserver php-5.6.29]</span> Starting php<span class="token operator">-</span>fpm done 4<span class="token punctuation">.</span> Systemd Script centos7 <span class="token punctuation">[</span>可选<span class="token punctuation">]</span> <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[Unit]</span> Description=The PHP FastCGI <span class="token keyword">Process</span> Manager After=syslog<span class="token punctuation">.</span>target network<span class="token punctuation">.</span>target <span class="token namespace">[Service]</span> <span class="token function">Type</span>=simple PIDFile=<span class="token operator">/</span>run<span class="token operator">/</span>php<span class="token operator">-</span>fpm<span class="token punctuation">.</span>pid ExecStart=<span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>php<span class="token operator">/</span>sbin<span class="token operator">/</span>php<span class="token operator">-</span>fpm <span class="token operator">--</span>nodaemonize <span class="token operator">--</span>fpm<span class="token operator">-</span>config <span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>php<span class="token operator">/</span>etc<span class="token operator">/</span>php<span class="token operator">-</span>fpm<span class="token punctuation">.</span>conf ExecReload=<span class="token operator">/</span>bin<span class="token operator">/</span><span class="token function">kill</span> <span class="token operator">-</span>USR2 <span class="token variable">$MAINPID</span> ExecStop=<span class="token operator">/</span>bin<span class="token operator">/</span><span class="token function">kill</span> <span class="token operator">-</span>SIGINT <span class="token variable">$MAINPID</span> <span class="token namespace">[Install]</span> WantedBy=multi<span class="token operator">-</span>user<span class="token punctuation">.</span>target <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[root@webserver ~]</span> <span class="token namespace">[root@localhost ~]</span> tcp LISTEN 0 128 127<span class="token punctuation">.</span>0<span class="token punctuation">.</span>0<span class="token punctuation">.</span>1:9000 <span class="token operator">*</span>:<span class="token operator">*</span> tcp LISTEN 0 128 <span class="token operator">*</span>:80 <span class="token operator">*</span>:<span class="token operator">*</span>部署PHP-fpm 1. 以php-fpm的方式安装php [root@tianyun ~] libxml2 libxml2-devel libcurl libcurl-devel libxslt-devel openssl-devel [root@webserver ~] [root@webserver ~] [root@webserver ~] --prefix=/usr/local/php \ --with-curl \ --with-freetype-dir \ --with-gd \ --with-gettext \ --with-iconv-dir \ --with-jpeg-dir \ --with-kerberos \ --with-libdir=lib64 \ --with-libxml-dir \ --with-mysql \ --with-mysqli \ --with-openssl \ --with-pcre-regex \ --with-pdo-mysql \ --with-pdo-sqlite \ --with-pear \ --with-png-dir \ --with-xmlrpc \ --with-xsl \ --with-zlib \ --enable-fpm \ --enable-bcmath \ --enable-libxml \ --enable-inline-optimization \ --enable-gd-native-ttf \ --enable-mbregex \ --enable-mbstring \ --enable-opcache \ --enable-pcntl \ --enable-shmop \ --enable-soap \ --enable-sockets \ --enable-sysvsem \ --enable-xml \ --enable-zip [root@webserver php-5.6.29] [root@webserver php-5.6.29] 2. php-fpm配置文件(影响php处理php程序的性能,例如php进程数、最大连接数配置等,运维人员关注) [root@webserver php-5.6.29] 3. php置文件(影响php代码,例如允许客户端最大上传文件的大小,设置的timezone,php所支持的扩展功能例如是否可以连接MySQL、Memcache,程序员关注) [root@webserver php-5.6.29] 4. init script centos6 [可选]centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 centos6 c [root@webserver php-5.6.29] [root@webserver php-5.6.29] [root@webserver php-5.6.29] [root@webserver php-5.6.29] [root@webserver php-5.6.29] Starting php-fpm done 4. Systemd Script centos7 [可选] [root@webserver ~] [Unit] Description=The PHP FastCGI Process Manager After=syslog.target network.target [Service] Type=simple PIDFile=/run/php-fpm.pid ExecStart=/usr/local/php/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php/etc/php-fpm.conf ExecReload=/bin/kill -USR2 $MAINPID ExecStop=/bin/kill -SIGINT $MAINPID [Install] WantedBy=multi-user.target [root@webserver ~] [root@webserver ~] [root@localhost ~] tcp LISTEN 0 128 127.0.0.1:9000 *:* tcp LISTEN 0 128 *:80 *:*
4.mysql 部署
1<span class="token punctuation">.</span>RPM部署 yum <span class="token operator">-</span>y install mariadb<span class="token operator">-</span>server mariadb 安装mysql服务器程序和客户机程序。 systemctl <span class="token function">start</span> mariadb 启动mysql服务器 systemctl enable mariadb 开机启动mysql服务器 mysqladmin password <span class="token string">'123456'</span> 修改mysql的root密码为‘123456’ create database bbs<span class="token punctuation">;</span> 准备数据库,存放app grant all on bbs<span class="token punctuation">.</span><span class="token operator">*</span> to phptest@<span class="token string">'192.168.100.10'</span> identified by <span class="token string">'123456'</span><span class="token punctuation">;</span> 授权phptest用户管理bbs库 请注意用户名密码主机参数需要更换。 flush privileges<span class="token punctuation">;</span> 刷新权限 vim <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span>index<span class="token punctuation">.</span>php <?php <span class="token variable">$link</span>=mysql_connect<span class="token punctuation">(</span><span class="token string">'192.168.100.10'</span><span class="token punctuation">,</span><span class="token string">'phptest'</span><span class="token punctuation">,</span><span class="token string">'123456'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token variable">$link</span><span class="token punctuation">)</span> <span class="token function">echo</span> <span class="token string">"Successfuly"</span><span class="token punctuation">;</span> <span class="token keyword">else</span> <span class="token function">echo</span> <span class="token string">"Faile"</span><span class="token punctuation">;</span> mysql_close<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> ?> 修改主页,测试MYSQL的链接状态 如果测试为faile,请检查数据库授权结果。1<span class="token punctuation">.</span>RPM部署 yum <span class="token operator">-</span>y install mariadb<span class="token operator">-</span>server mariadb 安装mysql服务器程序和客户机程序。 systemctl <span class="token function">start</span> mariadb 启动mysql服务器 systemctl enable mariadb 开机启动mysql服务器 mysqladmin password <span class="token string">'123456'</span> 修改mysql的root密码为‘123456’ create database bbs<span class="token punctuation">;</span> 准备数据库,存放app grant all on bbs<span class="token punctuation">.</span><span class="token operator">*</span> to phptest@<span class="token string">'192.168.100.10'</span> identified by <span class="token string">'123456'</span><span class="token punctuation">;</span> 授权phptest用户管理bbs库 请注意用户名密码主机参数需要更换。 flush privileges<span class="token punctuation">;</span> 刷新权限 vim <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span>index<span class="token punctuation">.</span>php <?php <span class="token variable">$link</span>=mysql_connect<span class="token punctuation">(</span><span class="token string">'192.168.100.10'</span><span class="token punctuation">,</span><span class="token string">'phptest'</span><span class="token punctuation">,</span><span class="token string">'123456'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token variable">$link</span><span class="token punctuation">)</span> <span class="token function">echo</span> <span class="token string">"Successfuly"</span><span class="token punctuation">;</span> <span class="token keyword">else</span> <span class="token function">echo</span> <span class="token string">"Faile"</span><span class="token punctuation">;</span> mysql_close<span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> ?> 修改主页,测试MYSQL的链接状态 如果测试为faile,请检查数据库授权结果。1.RPM部署 yum -y install mariadb-server mariadb 安装mysql服务器程序和客户机程序。 systemctl start mariadb 启动mysql服务器 systemctl enable mariadb 开机启动mysql服务器 mysqladmin password '123456' 修改mysql的root密码为‘123456’ create database bbs; 准备数据库,存放app grant all on bbs.* to phptest@'192.168.100.10' identified by '123456'; 授权phptest用户管理bbs库 请注意用户名密码主机参数需要更换。 flush privileges; 刷新权限 vim /usr/share/nginx/html/index.php <?php $link=mysql_connect('192.168.100.10','phptest','123456'); if ($link) echo "Successfuly"; else echo "Faile"; mysql_close(); ?> 修改主页,测试MYSQL的链接状态 如果测试为faile,请检查数据库授权结果。
5.示例:业务上线
购买服务器/云主机
购买域名&IP
上传APP
wget https:<span class="token operator">/</span><span class="token operator">/</span>cn<span class="token punctuation">.</span>wordpress<span class="token punctuation">.</span>org<span class="token operator">/</span>wordpress<span class="token operator">-</span>4<span class="token punctuation">.</span>9<span class="token punctuation">.</span>4<span class="token operator">-</span>zh_CN<span class="token punctuation">.</span>zip 官方下载也可以rz上传本地 unzip wordpress<span class="token operator">-</span>4<span class="token punctuation">.</span>9<span class="token punctuation">.</span>4<span class="token operator">-</span>zh_CN<span class="token punctuation">.</span>zip 解压 <span class="token function">rm</span> <span class="token operator">-</span>rf <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span>index<span class="token punctuation">.</span>php 删除测试页 <span class="token function">cp</span> <span class="token operator">-</span>rf <span class="token operator">/</span>root<span class="token operator">/</span>wordpress/<span class="token operator">*</span> <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html 把内容复制到网站主目录 chown <span class="token operator">-</span>R nginx<span class="token punctuation">.</span>nginx <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html/<span class="token operator">*</span> 更改主人和属组 chmod 777 <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span> 授权 访问APP 数据库名称 数据库用户 数据密码 必须和前方授权一致。 如果出现wp<span class="token operator">-</span>config<span class="token punctuation">.</span>php文件不可写。 可以用root或者请手动创建 vim <span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span>wp<span class="token operator">-</span>config<span class="token punctuation">.</span>php <span class="token operator">/</span><span class="token operator">/</span>配置连接数据库,非商业的应用需要手动配置连接数据库wget https:<span class="token operator">/</span><span class="token operator">/</span>cn<span class="token punctuation">.</span>wordpress<span class="token punctuation">.</span>org<span class="token operator">/</span>wordpress<span class="token operator">-</span>4<span class="token punctuation">.</span>9<span class="token punctuation">.</span>4<span class="token operator">-</span>zh_CN<span class="token punctuation">.</span>zip 官方下载也可以rz上传本地 unzip wordpress<span class="token operator">-</span>4<span class="token punctuation">.</span>9<span class="token punctuation">.</span>4<span class="token operator">-</span>zh_CN<span class="token punctuation">.</span>zip 解压 <span class="token function">rm</span> <span class="token operator">-</span>rf <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span>index<span class="token punctuation">.</span>php 删除测试页 <span class="token function">cp</span> <span class="token operator">-</span>rf <span class="token operator">/</span>root<span class="token operator">/</span>wordpress/<span class="token operator">*</span> <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html 把内容复制到网站主目录 chown <span class="token operator">-</span>R nginx<span class="token punctuation">.</span>nginx <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html/<span class="token operator">*</span> 更改主人和属组 chmod 777 <span class="token operator">/</span>usr<span class="token operator">/</span>share<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span> 授权 访问APP 数据库名称 数据库用户 数据密码 必须和前方授权一致。 如果出现wp<span class="token operator">-</span>config<span class="token punctuation">.</span>php文件不可写。 可以用root或者请手动创建 vim <span class="token operator">/</span>usr<span class="token operator">/</span>local<span class="token operator">/</span>nginx<span class="token operator">/</span>html<span class="token operator">/</span>wp<span class="token operator">-</span>config<span class="token punctuation">.</span>php <span class="token operator">/</span><span class="token operator">/</span>配置连接数据库,非商业的应用需要手动配置连接数据库wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.zip 官方下载也可以rz上传本地 unzip wordpress-4.9.4-zh_CN.zip 解压 rm -rf /usr/share/nginx/html/index.php 删除测试页 cp -rf /root/wordpress/* /usr/share/nginx/html 把内容复制到网站主目录 chown -R nginx.nginx /usr/share/nginx/html/* 更改主人和属组 chmod 777 /usr/share/nginx/html/ 授权 访问APP 数据库名称 数据库用户 数据密码 必须和前方授权一致。 如果出现wp-config.php文件不可写。 可以用root或者请手动创建 vim /usr/local/nginx/html/wp-config.php //配置连接数据库,非商业的应用需要手动配置连接数据库
有可能上传的内容在云盘app,就需要在里面下载。
最后一步:产品交付,回复。
原文链接:https://blog.csdn.net/cyx1834265118/article/details/108762321
© 版权声明
声明📢本站内容均来自互联网,归原创作者所有,如有侵权必删除。
本站文章皆由CC-4.0协议发布,如无来源则为原创,转载请注明出处。
THE END