参考文档:
a.https://itfun.tv/news/106
b.https://itfun.tv/news/54
一:
使用FileZilla
连接服务器,把本地项目打包成zip格式,拖入var/www
下面.然后解压缩unzip
,并删除压缩文件
sudo su 切换管理员,
cd / 进入菜单
cd etc/nginx/sites-available# 进入配置菜单
-
vim mishop 打开mishop配置
5.laravel 配置
esc
+:wq
退出保存配置
cd ..
cd sites-enabled
(如果之前有sites-enabled
的,要先删除sites-enabled
,再运行下面命令)
ln -s /etc/nginx/sites-available/mishop /etc/nginx/sites-enabled/mishop
- 重启Nginx服务
nginx -t #这个命令会告诉你Nginx配置文件是否配置错误
service nginx restart #重启Nginx服务
- 再进入项目,查看
.env
文件,将数据库修改为线上服务器的数据库,
10.项目启动!!!!!
二: Linux服务器上给项目设置SSL证书
需要注意的地方:http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443;
1.进入腾讯云,搜索ssl证书
,点击申请免费证书
,输入自己需要设置的域名,然后自动验证,等待腾讯审核,
2.审核通过之后,下载证书,找到Nginx文件夹,把crt
,key
后缀的文件名字改下,改简单点,然后通过ssh
连上服务器,在根目录创建文件夹opt/nginx
。把crt
,key
这两个文件复制过去,记得给权限,不然无法上传,
3.配置nginx, cd /etc/nginx/sites-available
,更改配置如下:
server {
listen 80;
server_name mishop.xxxxxx.com;
server_tokens off;
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
ssl on;
ssl_certificate /opt/nginx/mishop.crt;
ssl_certificate_key /opt/nginx/mishop.key;
root /var/www/mishop/public;
index index.html index.htm index.php index.nginx-debian.html;
server_name mishop.xxxxxx.com;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
}
4.service nginx restart 重启下nginx 服务;