分类 技术 下的文章

在面板申请 Let's Encrypt 证书后,虽然显示申请成功,但常常会出现并没有被正确添加的情况。其实已经申请完毕,只是没有被面板识别到,此时可以手动添加证书文件。

打开服务器目录

/www/server/panel/vhost/letsencrypt/

找到以域名命名的文件夹,进入后找到privkey.pemfullchain.pem两个文件,复制其内容。

在站点修改 SSL 的窗口中,选“其他证书”,在“密钥(KEY)”粘入privkey.pem的内容,在“证书(PEM格式)”粘入fullchain.pem的内容,保存即可。

总组合数

$$ C_{33}^6 C_{16}^1=17721088 $$

奖项组合数

一等奖

$$ 1 $$

二等奖

$$ C_6^6 C_{16-1}^1=15 $$

三等奖

$$ C_6^5 C_{33-5-1}^1=162 $$

四等奖

$$ C_6^5 C_{33-5-1}^1 C_{16-1}^1+C_6^4 C_{33-4-2}^2=7695 $$

五等奖

$$ C_6^4 C_{33-4-2}^2 C_{16-1}^1+C_6^3 C_{33-3-3}^3=137475 $$

六等奖

$$ C_6^2 C_{33-2-4}^4+C_6^1 C_{33-1-5}^5+C_{33-6}^6=1043640 $$

有时需要导航栏对当前页面所述栏目高亮,可在 Jinja2 中使用下述方法。

在模板页base.j2.html写入导航栏的基本情况:

{% set nav_bar = [
  ('/', 'index', '主页'),
  ('/price', 'price', '价格'),
  ('/about', 'about', '关于')
] -%}

{% set active_page = active_page|default('index') -%}

{# 设置 active_page 变量的默认值是 index,即不指定高亮页面的情况下主页高亮 #}

...

<div class="navbar-nav">
{% for href, id, caption in nav_bar %}

       <a class="nav-link{% if id == active_page %} active{% endif %}" aria-current="page" href="{{ href|e }}">{{ caption|e }}</a>
       
{% endfor %}
</div>

随后在指定页面设置变量即可。

{% set active_page = 'price' %}

PHP 有一个 echo 标记简写 <?=, 它是更完整的 <?php echo 的简写形式。

<?= 'Hello World' ?>

使用条件的高级分离术:PHP 将跳过条件语句未达成的段落,即使该段落位于 PHP 开始和结束标记之外。由于 PHP 解释器会在条件未达成时直接跳过该段条件语句块,因此 PHP 会根据条件来忽略之。

要输出大段文本时,跳出 PHP 解析模式通常比将文本通过 echo 或 print 输出更有效率。

<?php if ($expression == true): ?>
  This will show if the expression is true.
<?php else: ?>
  Otherwise this will show.
<?php endif; ?>

如果只是想得到一个易读懂的类型的表达方式用于调试,用 gettype() 函数。要检验某个类型,不要用 gettype() ,而用 is_type 函数(如 is_int() )。

PHP 中的类型强制转换和 C 中的非常像:在要转换的变量之前加上用括号括起来的目标类型。

<?php
$foo = 10;   // $foo is an integer
$bar = (boolean) $foo;   // $bar is a boolean
?>

可变变量:

<?php
$a = 'hello';
$$a = 'world'; // $$a == $hello
echo "$a ${$a}";  // hello world
echo "$a $hello"; // hello world

form 表单中,变量名中的点和空格被转换成下划线。例如 <input name="a.b" /> 变成了 $_REQUEST["a_b"]

IMAGE SUBMIT 变量名:当提交表单时,可以用一幅图像代替标准的提交按钮,用类似这样的标记:

<input type="image" src="image.gif" name="sub" />

当用户点击到图像中的某处时,相应的表单会被传送到服务器,并加上两个变量 sub_x 和 sub_y。它们包含了用户点击图像的坐标。有经验的用户可能会注意到被浏览器发送的实际变量名包含的是一个点而不是下划线(即 sub.x 和 sub.y),但 PHP 自动将点转换成了下划线。

函数的返回值是数组的情况。

<?php
function small_numbers()
{
    return [0, 1, 2];
}
// 使用短数组语法将数组中的值赋给一组变量
[$zero, $one, $two] = small_numbers();

// 在 7.1.0 之前,唯一相等的选择是使用 list() 结构
list($zero, $one, $two) = small_numbers();
?>

PHP 7 中的 ?? 操作。

$i = 0;
echo $i ?? 1; //当 $i 存在且不为 null 时,使用 $i ,否则使用 1 .
echo isset($i) ? $i : 1;

原因

需要一个未分配的分区,而非分配好的分区。当分配好后,未分区的大小小于需要建立的大小,即会报错。

解决方法

删除原来建立的分区,选中磁盘,在工具栏“分区(P)”菜单选择“建立ESP/MSR分区”,键入合适的大小(默认也可)即可。

(不确定是不是在“分区”菜单下,若没有,请在附近菜单中寻找。)

在 URL 中利用#:~:text=片段可以进行页面中的文本高亮定位,使用逗号分隔开位置。

部分浏览器支持此功能。

#:~:text=START,END

示例:

http://www.npc.gov.cn/wxzl/wxzl/2000-12/06/content_4379.htm#:~:text=第五条
http://www.npc.gov.cn/wxzl/wxzl/2000-12/06/content_4379.htm#:~:text=第五条,不受处罚的除外。

扩展阅读