1.安装 nginx apt-get install nginx
配置ngnix路径下的default文件*
root # thinkPhp项目的路径(默认指定到public下)
server {
listen 80 default_server;
listen [::]:80 default_server;
root /home/ubuntu/tplay/public;
index index.html index.htm index.php index.nginx-debian.html;
server_name 127.0.0.1
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; #(对应php路径的fpm文件)
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
access_log off;
error_log off;
expires 30d;
}
location ~ .*\.(js|css)?$ {
access_log off;
error_log off;
expires 12h;
}
}
2.安装 php agt-get install php
sudo apt-get install php7.2-mysql php7.2-fpm php7.2-curl php7.2-xml php7.2-gd php7.2-mbstring php-memcached php7.2-zip
3.安装 mysql apt-get install mysql-server
修改 root 密码
update user set authentication_string=PASSWORD("这里输入你要改的密码") where User='root';
update user set plugin="mysql_native_password";
quit;
4.ThinkPhP 项目中的配置
(thinkphp 中必读文件)
如果你的域名实在不能指向public目录,只能指向根目录,那也是有解决方案的(谁让我这么好呢(⊙o⊙)…)。
1.修改/app/admin/config.php
return [
'view_replace_str' => [
'__CSS__' => '/public/static/admin/css',
'__PUBLIC__' => '/public/static/public',
'__JS__' => '/public/static/admin/js'
],
];
2.修改/public/static/admin/js/tab.js 第23行
mainUrl: "/public/admin/main/index",
3.修改/public/static/admin/js/kitconfig.js 第5行
resourcePath: '/public/static/admin/',
4.修改/app/admin/controller/common.php 中的upload方法
public function upload($module='admin',$use='admin_thumb')
{
if($this->request->file('file')){
$file = $this->request->file('file');
}else{
$res['code']=1;
$res['msg']='没有上传文件';
return json($res);
}
$module = $this->request->has('module') ? $this->request->param('module') : $module;//模块
$web_config = Db::name('webconfig')->where('web','web')->find();
$info = $file->validate(['size'=>$web_config['file_size']*1024,'ext'=>$web_config['file_type']])->rule('date')->move(ROOT_PATH . 'public' . DS . 'uploads' . DS . $module . DS . $use);
if($info) {
//写入到附件表
$data = [];
$data['module'] = $module;
$data['filename'] = $info->getFilename();//文件名
$data['filepath'] = DS . 'public' . DS .'uploads' . DS . $module . DS . $use . DS . $info->getSaveName();//文件路径
$data['fileext'] = $info->getExtension();//文件后缀
$data['filesize'] = $info->getSize();//文件大小
$data['create_time'] = time();//时间
$data['uploadip'] = $this->request->ip();//IP
$data['user_id'] = Cookie::has('admin') ? Cookie::get('admin') : 0;
if($data['module'] = 'admin') {
//通过后台上传的文件直接审核通过
$data['status'] = 1;
$data['admin_id'] = $data['user_id'];
$data['audit_time'] = time();
}
$data['use'] = $this->request->has('use') ? $this->request->param('use') : $use;//用处
$res['id'] = Db::name('attachment')->insertGetId($data);
$res['src'] = DS . 'public' . DS . 'uploads' . DS . $module . DS . $use . DS . $info->getSaveName();
$res['code'] = 2;
addlog($res['id']);//记录日志
return json($res);
} else {
// 上传失败获取错误信息
return $this->error('上传失败:'.$file->getError());
}
}
5.修改/app/admin/controller/attachment.php 中的upload方法
public function upload($module='admin',$use='attachment')
{
if($this->request->file('file')){
$file = $this->request->file('file');
}else{
$res['code']=1;
$res['msg']='没有上传文件';
return json($res);
}
$web_config = Db::name('webconfig')->where('web','web')->find();
$info = $file->validate(['size'=>$web_config['file_size']*1024,'ext'=>$web_config['file_type']])->rule('date')->move(ROOT_PATH . 'public' . DS . 'uploads' . DS . $module . DS . $use);
if($info) {
//写入到附件表
$data = [];
$data['module'] = $this->request->has('module') ? $this->request->param('module') : $module;//模块
$data['filename'] = $info->getFilename();//文件名
$data['filepath'] = DS . 'public' . DS . 'uploads' . DS . $module . DS . $use . DS . $info->getSaveName();//文件路径
$data['fileext'] = $info->getExtension();//文件后缀
$data['filesize'] = $info->getSize();//文件大小
$data['create_time'] = time();//时间
$data['uploadip'] = $this->request->ip();//IP
$data['user_id'] = Cookie::has('admin') ? Cookie::get('admin') : 0;
if($data['module'] = 'admin') {
//通过后台上传的文件直接审核通过
$data['status'] = 1;
$data['admin_id'] = $data['user_id'];
$data['audit_time'] = time();
}
$data['use'] = $this->request->has('use') ? $this->request->param('use') : $use;//用处
$res['id'] = Db::name('attachment')->insertGetId($data);
addlog($res['id']);//记录日志
return $this->success('上传完成','admin/attachment/index');
} else {
// 上传失败获取错误信息
return $this->error('上传失败:'.$file->getError());
}
}
6.访问 你的域名/public/模块名称