linux搭建网站
CentOS
1.安装
yum -y install nginx
*或者安装指定版本,版本网址:http://nginx.org/packages/centos/7/x86_64/RPMS/
rpm -ivh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.10.3-1.el7.ngx.x86_64.rpm
#安装rpm:sudo apt-get install rpm
配置文件
vi /etc/nginx/conf.d/default.conf
其他步骤参考下面debian的
debian
1.安装nginx
apt-get install nginx
设置开机启动:
systemctl enable nginx
2.上传网页文件
默认网页地址(可在配置文件中查看 /etc/nginx/sites-enabled/default):/var/www/html
将网站文件上传到目录
可使用 vsftpd
zip解压命令
unzip ***.zip
3.配置https
1)申请ssl证书(本人推荐阿里云直接生成,可跳过此步骤)
安装EPEL:
yum -y install epel-release
安装certbot用于签发SSL证书:
yum -y install certbot
申请SSL证书:
certbot certonly --standalone -d example.com
这里的example.com替换成你的域名
如果申请成功,证书和私钥路径如下:
/etc/letsencrypt/live/example.com/fullchain.pem
/etc/letsencrypt/live/example.com/privkey.pem
2)编辑配置文件:(Debian 9 VIM 使用鼠标右键复制)
vi /etc/nginx/sites-enabled/default
添加:
listen 443 ssl default_server; listen [::]:443 ssl default_server; ssl_certificate /etc/nginx/ssl_certs/***.pem; ssl_certificate_key /etc/nginx/ssl_certs/***.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; error_page 497 https://$host$request_uri;
http 跳转 https :
if ($scheme = http ) {return 301 https://$host$request_uri;}
使用301跳转比rewrite性能更高,原因在于rewrite使用正则表达式
完整配置文件示例:
server { listen 80 default_server; listen [::]:80 default_server; # SSL configuration listen 443 ssl default_server; listen [::]:443 ssl default_server; ssl_certificate /etc/nginx/ssl_certs/jingdesign.top.pem; ssl_certificate_key /etc/nginx/ssl_certs/jingdesign.top.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; error_page 497 https://$host$request_uri; root /var/www/html; server_name $host$; # https jump if ($scheme = http ) {return 301 https://$host$request_uri;} location / { # Add index.php to the list if you are using PHP index index.html index.htm index.nginx-debian.html; } }
重启 nginx:
systemctl restart nginx
防火墙关闭:
systemctl status firewalld查看当前防火墙状态。 systemctl stop firewalld关闭当前防火墙。 systemctl disable firewalld开机防火墙不启动。
https://baijiahao.baidu.com/s?id=1650170269926650594&wfr=spider&for=pc
https://www.jianshu.com/p/7419a027290d
https://www.jianshu.com/p/55888902d8bb
https://blog.csdn.net/chunyufeiyun/article/details/81079743
https://www.cnblogs.com/mafeng/p/8299289.html
https://blog.csdn.net/weixin_34270606/article/details/89730301
https://zq.zhaopin.com/answer/6451349/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗