宝塔面板或大或小的坑,虽有后台门、删库塔等说法,但确实药方便一些,中文资料也相对更多一些(相对于小白)。
Linux面板
PHP问题
PHP7.4无法安装GMP插件
问题描述:无论环境是什么,php7安装gmp插件很快并显示完成,但实际上并没有成功。
官方给出了解决方案经网友和本人测试无效
apt-get update
apt-get install gmp-dev
网友给出的亲测有效方案,本人也测试成功
apt-get install libgmp-dev
Windows面板
Nginx问题
nginx开启pathinfo模式无效
同样的 伪静态配置,php8.0 妥妥正常,无需修改任何 伪静态 或者修改 nginx.conf ,$_SERVER[‘PATH_INFO’] 正常取值,
切换到 php 7+ 【php 5.2 ~ php 7.4】,$_SERVER[‘PATH_INFO’] 都没有值,经过几翻折腾终于搞定。
第一步:先确定PHP版本是否开启了pathinfo,如图所示
第二步:NGINX配置修改,主要是修改path_info的变量,修改位置如图所示,要替换的代码放在后面直接复制替换即可。
#PHP-INFO-START
location ~ \.php(.*)$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:20074;
fastcgi_index index.php;
set $path_info "";
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
#将文件地址赋值给变量 $real_script_name
set $real_script_name $1;
#将文件地址后的参数赋值给变量 $path_info
set $path_info $2;
}
#配置fastcgi的一些参数
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
fastcgi_param SCRIPT_NAME $real_script_name;
fastcgi_param PATH_INFO $path_info;
include fastcgi_params;
}
#PHP-INFO-END
第三步:还得配置NGINX的伪静态规则,参照这三个步骤可以完美解决thinkphp5在nginx上除首页以外全部404的问题
记录一次宝塔任务失效的解决方法
腾讯官方给出的解决方法暂未测试
1,进入/etc/pam.d
目录
2,打开文件 common-session-noninteractive
3,查找 session required pam_unix.so
内容(一般在最后)
4,在这一行上方添加
session
[success=1 default=ignore] pam_succeed_if.so service in cron quiet use_uid
5,保存并退出
6,重启cron
自行搜索到的一个参考,但是测试失败,因为不懂
http://www.361way.com/pam-tally2/4277.html
实际测试成功的方法,参考
https://www.bt.cn/bbs/thread-73608-1-1.html
apt remove -y cron
apt install -y cron
然后直接重启,删除所有任务,重启,创建,成功。就是要全部删除再创建有点心累。
Windows的Linux子系统宝塔面板安装失败(未验证测试)
原文链接:https://www.bt.cn/bbs/forum.php?mod=viewthread&tid=65196&page=1#pid258914
在宝塔面板的文件里打开/www/server/panel/class/panelMysql.py
可以看到是使用socket进行连接的,使用本地文件/tmp/mysql.sock
,我查看了下这个文件也是确实存在的..可能是权限?或者其他问题.总之这个连接方式连接不上...那么我们换一个连接方式,修改第60行
self.__DB_CONN = MySQLdb.connect(host = self.__DB_HOST,user = self.__DB_USER,passwd = self.__DB_PASS,port = self.__DB_PORT,charset="utf8",connect_timeout=1,unix_socket=socket)
把后面的unix_socket=socket去掉,超时时间connect_timeout改改,比如1000吧
self.__DB_CONN = MySQLdb.connect(host = self.__DB_HOST,user = self.__DB_USER,passwd = self.__DB_PASS,port = self.__DB_PORT,charset="utf8",connect_timeout=1000)
保存,重启面板,数据库就能正常使用了...保存,重启面板,数据库就能正常使用了...