分类 Linux答疑 下的文章

如果你需要管理web服务器,你一定遇到过这样的问题:

  1. 新建了一个目录给新网站用,可是Nginx/PHP应用部署后 你发现没权限写入这个目录。
  2. root账户操作时复制进/var/www的文件不能用Web应用删掉
  3. 自己新建的账户上传的应用总是没法运行

还有诸多类似的错误,本质上都是权限不规范导致的。
让我们看看一个正常的网站目录权限是怎么样的:

xfox@racknerd-14a7c8:~$ ls -l /var/www/xfox.fun/
total 100
drwxrwxr-x 5 www-data www-data  4096 Jul  4  2023 admin
-rwxrwxr-x 1 www-data www-data  1667 Jul  4  2023 config.inc.php
-rwxrwxr-x 1 www-data www-data   708 Jun  7  2023 index.php
drwxrwxr-x 4 www-data www-data  4096 Jul  4  2023 tools
drwxrwxr-x 6 www-data www-data  4096 Jul  4  2023 usr
drwxrwxr-x 6 www-data www-data  4096 Jul  4  2023 var

我们可以发现,如上的一个用Nginx+PHP 部署的Typecho 站点目录是归www-data这个用户及同名用户组所有的。
实际上:www-data就是Nginx/Apache等常用Web服务使用的特定user/group,目的是给予网站尽可能低的权限。

正确的操作方式既不是粗暴的的用root用户往里站点路径硬写,也不是sudo 提权强行操作。
你应该将自己当前使用的管理账户(例如xfox )添加到 www-data 用户组中。
我们可以执行如下命令完成这一操作:
sudo usermod -aG www-data $USER
接着重新登录服务器使用groups命令即可确定当前用户所在的用户组

xfox@racknerd-14a7c8:~$ groups
xfox sudo www-data

确认无误就可以愉快的玩耍了!

环境:Fedora41 KDE Fcitx5-rime Linux微信4.0.1.11

1.修改

新版微信使用QT开发,务必确定必要的包已安装:
sudo dnf install fcitx5-qt fcitx5-gtk

2.修改微信desktop文件:

[Desktop Entry]
Name=wechat
Name[zh_CN]=微信
Exec=env GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx XMODIFIERS=@im=fcitx /usr/bin/wechat %U
#Exec= /usr/bin/wechat %U
StartupNotify=true
Terminal=false
Icon=/opt/wechat/icons/wechat.png
Type=Application
Categories=Utility;
Comment=Wechat Desktop
Comment[zh_CN]=微信桌面版

Exec= 后直接添加:
env GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx XMODIFIERS=@im=fcitx
重新启动微信即可。