导航:首页 > 编程语言 > php部署文件

php部署文件

发布时间:2023-11-12 23:47:29

php手把手教你做网站(二十九)thinkphp6部署多个数据库

前边介绍了负载均衡,mysql同步,接下来介绍tp6分布式部署多个数据库,实现读写分离。

tp6的分布式部署读和写仍然是一个系统,这里我们分开操作,给用户展示的就是从数据库,后端添加文章就是主库,然后同步到从库。

1、配置数据库链接参数

目标:实现随机使用数据库展示信息,只是读操作。

测试:前台可以读取表中内容(存放的不一致),查看是否是随机显示的。

打开.env文件进行编辑

说明:

2、编辑database.php

找到deploy设置为1分布式部署,下边不要改,都是读,写入的也就是后端的我们单独建站连接主库。

配置完成,tp6使用的是mt_rand取随机数判断使用哪个数据库。

3、数据库交互写操作

比如浏览量没必要每次都去更新数据库,可以先使用redis缓存,存够1000的整数倍,再去更新数据库。

4、后台独立,也就是写

可以前后端分离,单独做一个网站(没有前端)使用ip访问或者独立的域名连接后台。

5、上传附件(jquery ajax跨域上传)

使用了nginx负载均衡,肯定是多个一样的网站,如果图片存放到一个站,别的就不能访问了,可以单独设置一个附件(压缩包,图片等)服务器,可以使用二级域名连接,这就要求我们上传附件的时候,是上传到附件服务器。

jqueryURL

API控制器apdpic方法

说明:

也可以先传到后台服务器然后使用(php)ftp上传,或者是通过curl上传到附件服务器,感觉那样毕竟麻烦,直接设置跨域会比较简单。

也测试了使用jsonp跨域,但是不能上传附件。

6、thinkphp6实现读写分离(在一个站点)

我个人是不喜欢这样的,负载均衡应该是均衡地读,也就是前台单独一个站点,后端的写是另一个独立的站点,看个人喜好吧。

独立后台的优点:可以提升安全性,因为我们的后台网址是不公开的,避免用户猜测一些后台的信息。

.env配置按照1所述编辑,默认第一个是主库。

database.php

愿大家在新的一年心想事成,万事如意!!!

㈡ 前端vue与后端Thinkphp在服务器的部署

vue在服务端部署时,我们都知道通过npm run build 指令打包好的dist文件,通过http指定是可以直接浏览的,Thinkphp通过域名指向index.php文件才可以浏览。要使前端正常调用后端数据,有两种方法:1、前端跨域调用后端数据,2、前端打包文件部署在后端的服务器文件夹下(同域)。

web服务器: apache

一、跨域

在服务器配置站点:

在路径/home/www/  下创建test项目文件夹,用来放项目文件。  

找到httpd-vhosts.conf文件配置站点  

前端站点:  

    ServerName test.test.com  

    DocumentRoot "/home/www/test/dist"    

    DirectoryIndex index.html  

后端站点:  

    ServerName test.testphp.com  

    DocumentRoot "/home/www/test/php"    

    DirectoryIndex index.php  

将前端打包好的dist文件放在/home/www/test/ 文件夹下,运行http://test.test.com可浏览,当路径改变时,刷新会出现404错误。此时dist文件下创建一个.htaccess文件,当路径不存在时,路径指向http://test.test.com/index.html能解决此问题。

  RewriteEngine On  

  RewriteBase /  

  RewriteRule ^index\.html$ - [L]  

  RewriteCond %{REQUEST_FILENAME} !-f  

  RewriteCond %{REQUEST_FILENAME} !-d  

  RewriteRule . /index.html [L]  

在/home/www/test文件夹下创建项目根目录php文件夹,将thinkphp文件放在php下。TP5的入口文件在public文件下,在这将public下的入口文件index.php挪到php文件夹下(个人习惯将入口文件放在项目根目录), 后端绑定Index模块。

前端调用后端接口,存在跨域,跨域解决方法有好几种,在这我将在后端php做配置,解决跨域问题,在公用控制器设置跨域配置:

class Common extends Controller  

{  

    public $param;  

    // 设置跨域访问  

    public function _initialize()  

    {  

        parent::_initialize();  

        isset($_SERVER['HTTP_ORIGIN']) ? header('Access-Control-Allow-Origin: '.$_SERVER['HTTP_ORIGIN']) : '';  

        header('Access-Control-Allow-Credentials: true');  

        header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS');  

        header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, authKey, sessionId");  

$param =  Request::instance()->param();  

$this->param = $param;  

    }  

}  

前端调用登录接口: this.axios.post('http://test.testphp.com/index.php/base/login', {user: '', password: ''})。

(可在webpack.base.conf.js文件下可定义接口:http://test.testphp.com/index.php/)

二、同域

后端配置同上,公共配置器中的header配置注释。将前端的dist文件下的所有文件(包含.htaccess),放在php文件夹下。将后端index控制器的index方法的路径重定向php下的index.html文件:

namespace app\index\controller;  

use think\Controller;  

class Index extends Controller  

{  

    public function index() {  

$this->redirect('/index.html');  

    }  

}  

前端调用登录接口: this.axios.post('/index.php/base/login', {user: '', password: ''})

转自:https://blog.csdn.net/qq_35465132/article/details/78986675

㈢ 服务器如何部署php

是php5.3以下版本的安装方法。


1、首先是下载PHP安装文件和MYSQL安装文件,请注意MYSQL有很多个版本,有社区版、标准版、企业版、集群版,其中只有社区版是免费的。


2、在服务器上配置好IIS,推荐IIS7以上版本,控制面板-打开或关闭windows功能-万维网服务-应用程序开发功能里选上对应就可安装


3、配置php环境:把php压缩包解压到C:php目录下面,然后找到php.ini-dist,更名为php.ini,
修改里面的扩展目录
extension_dir
=
“C:phpext”。
把以下扩展前面的分号去掉以启用
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mysql.dll

fastcgi.impersonate=1
默认为0,如果使用IIS,需要开启
cgi.fix_pathinfo=1
cgi.force_redirect=0
默认开启,如果使用IIS,可以将其关闭
其次指定extension_dir目录和date.timezone,即
extension_dir =
"C:/php53iis/ext"
date.timezone=
Asia/Shanghai
4、然后把extension=php_mysql.dll前面的分号去掉,保存并把php.ini复制到系统Windows目录下面。
5、然后依次打开我的电脑(右键)->管理->服务和应用程序->Internet信息服务(IIS)管理器,打开ISAPI和CGI限制,然后添加php的ISAPI的执行文件php5isapi.dll.
6、配置Mysql:把下载的mysql文件直接安装即可,然后复制php目录下面的libmysql.dll到系统Windows下面的System32目录里。
7、重启IIS,即完工。
如果是php5.3及以上版本,根本没有php5isapi.dll,也不需要把php.ini移动到windows安装目录,建议采用安装版,直接安装即可。

㈣ Thinkphp5项目在nginx服务器部署

1,切换到nginx的配置目录,找到nginx.conf文件

    cd   /usr/local/nginx/conf

    vim  nginx.conf

2,如果是单项目部署的话,只需要在nginx.conf文件里面加上以下

server{

        listen 80;

        # 域名,本地测试可以使用127.0.0.1或localhost

        server_name www.zhangc.cn;

        # php项目根目录

        root /home/data-www/blog;

        location /{

                # 定义首页索引文件的名称

                index index.php index.html index.htm;

                # 影藏入口文件

                if (-f $request_filename/index.html){

                            rewrite (.*) $1/index.html break;

                }

                if (-f $request_filename/index.php){

                            rewrite (.*) $1/index.php;

                }

                if (!-f $request_filename){

                            rewrite (.*) /index.php;

                }

                try_files $uri $uri/ /index.php?$query_string;

        }

        # PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI协议默认配置.

        # Fastcgi服务器和程序(PHP)沟通的协议

        .location ~ .*\.php${

                # 设置监听端口

                fastcgi_pass 127.0.0.1:9000;

                # 设置nginx的默认首页文件

                fastcgi_index index.php;

                # 设置脚本文件请求的路径

                fastcgi_param SCRIPT_FILENAME$document_root$fastcgi_script_name;

                # 引入fastcgi的配置文件

                include fastcgi_params;

                fastcgi_split_path_info ^(.+?\.php)(/.*)$;

                set $path_info $fastcgi_path_info;

                fastcgi_param PATH_INFO $path_info;

                try_files $fastcgi_script_name =404;

        }

}

3,如果多项目部署,就需要配置vhost

第一步:编辑nginx.conf文件,在最后加上     include    vhost/*.conf;

第二步:进入vhost文件夹,创建    域名.conf    文件,如创建一个:quanma.meyat.com.conf

第三步:编辑quanma.meyat.com.conf文件,内容如下:

        server

        {

                listen 80;

                server_name quanma.meyat.com;

                index index.html index.htm index.php default.html default.htm default.php;

                root /data/wwwroot/default/quanma/public/;

                #error_page 404 /404.html;

                location / {

                        index index.html index.php;

                        if (-f $request_filename/index.html){

                                rewrite (.*) $1/index.html break;

                        }

                        if (-f $request_filename/index.php){

                                rewrite (.*) $1/index.php;

                        }

                        if (!-f $request_filename){

                                rewrite (.*) /index.php;

                        }

                        try_files $uri $uri/ /index.php?$query_string;

                }

                location ~ [^/]\.php(/|$)

                {

                        # comment try_files $uri =404; to enable pathinfo

                        #try_files $uri =404;

                        fastcgi_pass 127.0.0.1:9000;

                        fastcgi_index index.php;

                        include fastcgi_params;

                        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

                        fastcgi_split_path_info ^(.+?\.php)(/.*)$;

                        set $path_info $fastcgi_path_info;

                        fastcgi_param PATH_INFO $path_info;

                        try_files $fastcgi_script_name =404;

                        #include fastcgi.conf;

                        #include pathinfo.conf;

            }

            location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

            {

                    expires 30d;

            }

            location ~ .*\.(js|css)?$

            {

                    expires 12h;

            }

            # Disallow access to .ht, .svn, .bzr, .git, .hg, .cvs directories

            location ~ /\.(ht|svn|bzr|git|hg|cvs) {

                    deny all;

            }

            #access_log /date/nginx/bmp.com.conf/access.log main;

}

㈤ 怎么把php部署到apache服务器上linux

要将 PHP 部署到 Apache 服务器上,您需要执行以下步骤:
1.安装 Apache web 服务器:
在 Linux 终端中使用以下命令安装 Apache web 服务器:
sql
sudo apt-get update
sudo apt-get install apache2
2.安装 PHP:
在 Linux 终端中使用以下命令安装 PHP:
vbnet
sudo apt-get install php libapache2-mod-php
3.重启 Apache 服务器:
在 Linux 终端中使用以下命令重启 Apache 服务器:
sudo service apache2 restart
4.测试 PHP 安装:
在您的网站根目录中创建一颂蔽个名为 phpinfo.php 的文件,并将以下代码复制并粘贴到文件中:
php
<?php
phpinfo();
?>
将文件保存到网站根目录 /var/www/html 中。
现在,在您的 Web 浏览器中输入以下地址:http://localhost/phpinfo.php,您将看到 PHP 安装信息的页面。
如果您看到一个页面显示 PHP 安装信息,那培慧么您已经成功将 PHP 部署到 Apache 服务器上。
注意:在生产环境中,应采取安全措施,如配置 PHP,以避免潜在的安全漏野中州洞。

阅读全文

与php部署文件相关的资料

热点内容
php判断终端 浏览:118
编译网页在线 浏览:920
国际版本服务器是什么意思 浏览:437
压缩机十年包换 浏览:532
内核编译之后安装到哪 浏览:58
单片机加场效应管 浏览:154
怎么关闭appstore 浏览:474
学编程入门语言 浏览:309
安卓机为什么总是出现升级提示 浏览:133
b树java实现 浏览:943
亚马逊云服务器到期了怎么续费 浏览:852
我的世界网易如何在服务器里面加光影 浏览:284
nat地址访问外网服务器 浏览:966
怎样用java编译一个心形 浏览:934
如何使用python中的pygame 浏览:836
python实用小工具 浏览:24
怎么在安卓手机上去除马赛克 浏览:235
农行浓情通app怎么下载 浏览:533
怎么把原文件夹找回来 浏览:535
俄罗斯方块实现python思路 浏览:735