Solve “no input file specified.” for Nginx after migrating the website.

Recently I migrated my website to a new server. After setting up everything, everything else seemed to be working okay. However, when I copied files for WordPress and accessed the home page, all I was getting was a single line of error:

no input file specified.

I thought something was wrong with Nginx’s config, but everything was the same. Checked every solution online and every setting for PHP and still didn’t solve the problem.

Finally, I tried to go through all the files inside the webroot, until I found the file .user.ini, which contained a rewrite rule for the old directory. When I moved to the new environment, the directory was also changed, making this rewrite fatal for the website. After removing the rule, problem solved.

解决Windows远程桌面无法连接的问题

尝试使用运行Windows 11的电脑连接一台运行Windows 10的电脑(使用Windows自带的远程桌面客户端),在用户名(微软账号)与密码一致的情况下失败并得到提示The logon attempt failed。搜索后在微软社区发现了一个奇怪的解决方案:

  1. 命令行运行whoami,查看并复制本地账户名称
  2. 按住shift键后右键任意程序,选择以其他用户运行选项
  3. 在弹出的窗口中填入刚刚复制的账户名称及设备的登陆密码
  4. 打开程序后关闭程序
  5. 完成以上操作后在第二台设备中输入相同的用户名及密码即可连接设备

不清楚原理是什么,但确实能解决这个奇怪的问题。记录于此,希望能帮到更多人。

Solving Driver Problem for OnePlus 6T under Fastboot Mode

Under the fastboot, Oneplus 6T cannot be recognized by the Windows 10 even with official driver installed. The solution is simple: after connecting the phone that is in the fastboot with PC, open Windows Update and click view all optional updates. There’s a driver called Google, Inc. – Other hardware – Android Bootloader Interface. Installing this driver solves the problem.

[MAST10005] 1. The Language of Mathematics

This is a note collection for MAST10005 (Calculus 1) from the University of Melbourne.


1.1 Mathematical Statements

  • Mathematical Statement: a sentence or expression that is unambiguously true of false.
    • e.g. let p be the statement1+1=3, p is an valid statement. p is false.
    • counter case: f(x) is continuous is not a M.S. without further information.
  • Conjunction: true for p and q. (let p and q be M.S.) Denoted as p \wedge q
  • Disjunction: true for p or q. (let p and q be M.S.) Denoted as p \vee q
  • Negation: true for not p. (let p be M.S.) Denoted as ~ p
  • Condition: let D be a set. Condition is a statement that is true or false depending on the choice of x \in D. Denoted with notation p(x).
    • e.g. Consider x \in N. Let p(x) be the condition “x is even”
  • Existential Quantifier: Let D be a set and p(x) be a condition over D. When at least onex \in D such that p(x) is true we say “there exists x \in D such that p(x)”. Denoted as \exists x \in D \; p(x)
  • Universal Quantifier: Let D be a set and p(x) be a condition over D. When p(x) is true for every x \in D we say “for all x \in D p(x)”. Denoted as \forall x \in D \; p(x)
  • Set of Numbers:
    • \mathbb{N} set of natural numbers. {1, 2, 3, 4, …}
    • \mathbb{Z} set of integers.
    • \mathbb{Q} set of rational numbers
    • \mathbb{R} set of real numbers
  • Set: A collection of unique objects.
    • e.g. {0, 0, 0, 1, 2, 7, 9} = {0, 1, 2, 7, 9}
    • Let A and B be sets. A and B are equal when every element of A is an element of B and every element of B is an element of A. Denoted A = B
  • Expressing Sets: Let D be set and let p(x) be a condition over D. The set of elements of D for which p(x) is true is denoted {x \in D | p(x)} (set-builder notation)
  • Subset: Let A and B be sets. When every element of A is an element of B, A is a subset of B. Denoted A \sqsubseteq B
  • Union: Let A and B be subsets of a set U. Union of A and B is the set of elements that are in at least one of A and B. Denoted A \cup B. That is: x \in A \cup B \; if \; and \; only \; if \; x \in A \; or \; x \in B
  • Intersection: Let A and B be subsets of a set U. Intersection of A and B is the set of elements that are both in A and B. Denoted A \cap B. That is: A \cap B = \{x \in A \cup B | x \in A \; and \; x \in B\}
  • Empty Set: \emptyset = \{\}
  • Cartesian Product: Let A and B be sets. Cartesian product of A and B is the set of all poosible ordered pairs we can build using elements of A as the first element and elements of B as the second element. Denoted as A \times B = \{(a, b)|a \in A, b \in B\}
    • e.g. \{0,1\} \times \{u,v,w\} = \{(0,u),(0,v),(0,w),(1,u),(1,v),(1,w)\}
  • Function: A function f consists of:
    • A nonempty set A called the domain of f;
    • A nonempty set B called the codomain of f;
    • A subset of AxB such that each element of A appears as the first element in exactly one ordered pair.
    • f with domain A and codomain B is denoted as f:A \longrightarrow B
    • The image of a under f is given by the notation f(a)
  • Range: Let A and B be sets and let f:A \longrightarrow B. The range of f is the set of values the function takes. Formally:
    • range(f) = \{b \in B \; | \; there \; exists \; a \in B \; such \; that \; f(a) = b\}
    • range(f) = \{f(a) \; | \; a \in A\}
  • Image: Let A and B be sets and let f:A \longrightarrow B. Let S be a subset of A. Image of S under f is the set
    • f(S) = \{ b \in B \; | \; there \; exists \; s \in S \; such \; that \; f(s) = b \}
    • f(S) = \{ f(s) \; | \; s \in S \}
    • Image is generalisation of range.
  • Function: Let A be a subset of R. Letf : A \longrightarrow \mathbb{R} and g : A \longrightarrow \mathbb{R}. Define following functions with codomain equal to R:
    • (f+g)(x)=f(x)+g(x)
    • (f-g)(x)=f(x)-g(x)
    • (fg)(x)=f(x)*g(x)
    • (f/g)(x)=f(x)/g(x)
    • Domain for f+g, f-g and fg is set A. Domain for f/g is set \{ a \in A \; | \; g(a) \neq 0 \}

为”不兼容”的设备安装Windows Subsystem for Android

最近微软正式推出了Android的子系统,尝试在自己的6代i3机器上安装却被告知不兼容。一番搜寻后寻找出如下解决方案。

首先去这个网站

https://store.rg-adguard.net/

输入WSA的商店地址,https://www.microsoft.com/en-us/p/windows-subsystem-for-android-with-amazon-appstore/9p3395vx91nr

并选择Slow(如图)

进入后下载Microsoft.UI.Xaml和WSA本体。其中Xaml视自己的架构下载:

下载后缀名为appx的文件

最后下载页面内最大的文件:WSA本体

下载完成后先去Microsoft Store更新电脑安装的所有应用,完成后双击安装Microsoft.UI.Xaml。

最后以管理员运行终端,输入 Add-AppxPackage WSA文件路径 ,回车即可安装。WSA文件路径为以msixbundle结尾的WSA安装文件

Zuk Z2 Plus 退出FFBM模式

今天不小心使手中的Zuk z2进入了FFBM模式,怎样操作都无法退出。搜寻一番后找到如下解决方案:

  • 同时按住音量+/音量-/电源键
  • 待手机震动后松开电源键
  • 继续按住两个音量键,直到菜单出现
  • 选择进入bootloader,然后选择重启

记一次显卡黑屏排查及解决过程

去年在闲鱼收了一块980ti打算换掉原来的RX470,当时买回来就有个奇怪的问题:只插一张980ti电脑点不亮,必须同时插470(甚至无需通电)才能正常开机。因为不是太影响使用,就也没太在意。

最近显卡涨价打算把980ti卖掉,突然想起还有这问题。出于销售的角度考虑,再次复现了只插一张卡的场景,问题依旧。

太奇怪了,为何一定要多插一张不通电的卡才能工作…尝试了彻底卸载AMD显卡驱动、重置主板,均无效。

最后尝试把980ti插到第二条pcie x16槽(速度是x8的)上,问题解决,可以正常开机了。

这下真相大白,原来这980ti只能运行在pcie x8的速度下…那为什么之前多插一张470就能运行了呢?查阅主板参数后发现,当x8的槽插入东西时,x16的槽自动降速为x8,所以980ti才能正常工作…

解决Windows 10卡任务栏小图标/窗口控件

最近电脑遇到很奇怪的问题:每次开机几分钟后便会出现各种操作问题:很多窗口的控件无法点击/点击后需要十几秒才有反应(包括任务管理器)、任务栏的更多图标全部变为空白。

一番折腾后找到如下解决方案:

打开任务管理器,结束桌面窗口管理器

此时便会恢复正常,但考虑到可能有系统文件损坏。修复损坏文件:以管理员运行Powershell后输入 Sfc /scannow 即可。

修复效果

尝试在Windows 10下使用SkyAR更换天空

最近了解到这个有趣的项目,遂尝试自己部署并记录下其中遇到的一些坑。

项目地址:https://github.com/jiupinjia/SkyAR

训练模型:https://drive.google.com/file/d/1COMROzwR4R_7mym6DL9LXhHQlJmJaV0J/view?usp=sharing


首先clone项目到本地,并下载模型文件。将模型带目录解压到项目目录内。

安装Python3, Anaconda:https://www.anaconda.com/products/individual#windows

安装项目目录内Requirements.txt内的依赖,但有几个需要注意/单独安装:

  • pytorch 使用conda安装,11.0是cuda的版本: conda install pytorch torchvision torchaudio cudatoolkit=11.0 -c pytorch
  • numpy 只能安装1.19.3,否则会报错: pip3 install numpy==1.19.3
  • 不装opencv-python,只装opencv-contrib-python: pip3 install opencv-contrib-python

安装完成后执行 python .\skymagic.py --path .\config\config-canyon-district9ship.json 即可看到效果。

附一个自己拍的视频,效果貌似不是很好…?