当 IIS 服务器无法启动 Web Management Service 服务时,可能的原因之一是 SSL 证书过期或被删除,只要在 IIS 的管理服务中指定有效的证书即可。

xoyozo 4 天前
45

ASP.NET 6 项目在 IIS 中打开显示 503 错误,但直接运行 .exe 文件运行正常。可尝试回收应用程序池。

xoyozo 14 天前
101

错误 Web 部署任务失败。

在远程计算机上处理请求时出错。

无法执行此操作。请与服务器管理员联系,检查授权和委派设置。

原因:WDeployAdmin 与 WDeployConfigWriter 这两个用户密码过期。

解决方法:

第一步,打开用户管理,重新设置这两个用户的密码

image.png

并在“属性”窗口勾选“密码永不过期”

image.png

第二步,打开 IIS 管理器中的“管理服务委派”

image.png

找到所有与这两个用户有关的项,右键“编辑”

image.png

点击左下角的“设置”按钮,填入与原来一致的用户名与第一步新设置的密码

image.png

全部设置完成后,即可正常发布项目。

xoyozo 半个月前

错误 TS5055 无法写入文件“***.js”,因为它会覆盖输入文件。

添加 tsconfig.json 文件有助于组织包含 TypeScript 和 JavaScript 文件的项目。有关详细信息,请访问 https://aka.ms/tsconfig。

检查“输出”窗口,找到“error”的行,并修复该错误。

xoyozo 21 天前
115

System.ComponentModel.Win32Exception: 拒绝访问。

[ExternalException (0x80004005): 无法执行程序。所执行的命令为 "\bin\roslyn\csc.exe" /shared /keepalive:"10" /noconfig  /fullpaths @"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\8c8f68eb\880f02b5\alczcu1a.cmdline"。]

解决方法:

web 部署发布时勾选“在发布期间预编译”

image.png

在“配置”中,去掉“允许更新预编辑站点”前的勾,勾选“不合并。为每个页面和控件创建单独的程序集”

image.png

xoyozo 2 个月前
204

本文以 vue 3 为例,vue 2 同理。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>clipboard.js 在 vue.js 中使用</title>
</head>
<body>
    <div id="app">
        <ul>
            <li v-for="item in list">
                {{item}}
                <button class="btn-cp" :value="item">复制</button>
            </li>
        </ul>
    </div>
    <script src="//xxx/vue/core-3.x.x/vue.global.js"></script>
    <script src="//xxx/clipboard/clipboard.js-2.x.x/dist/clipboard.min.js"></script>
    <script>
        const app = Vue.createApp({
            data: function () {
                return {
                    list: ["aaa", "bbb", "ccc"]
                }
            },
            mounted: function () {
                var clipboard = new ClipboardJS('.btn-cp', {
                    text: function (trigger) {
                        return trigger.getAttribute('value');
                    }
                });
                clipboard.on('success', function (e) {
                    alert('已复制“' + e.text + '”到粘贴板');
                    e.clearSelection();
                });
            }
        });
        const vm = app.mount('#app');
    </script>
</body>
</html>


xoyozo 2 个月前
222
  • 从朋友圈发布的视频时长限制30秒

  • 从视频号发布的视频时长限制30分钟

视频号助手网址:https://channels.weixin.qq.com/platform,管理视频号创作内容,相当于抖音巨量百应达人工作台。

视频号小店网址:https://channels.weixin.qq.com/shop,管理商品和订单,相当于抖店。


xoyozo 2 个月前
270

第一步,创建用户和 AccessKey

登录阿里云控制台后,从头像处进入 AccessKey 管理

image.png

“开始使用子用户 AccessKey”

image.png

点击“创建用户”,填写用户名(本文以 oss-bbs 为例),并勾选“Open API 调用访问”

image.png

点击确定创建成功,可以看到 AccessKey ID 和 AccessKey Secret


第二步,创建权限策略

在阿里云控制台左侧菜单“RAM 访问控制”中展开“权限管理”,选择“权限策略”

image.png

点击“创建权限策略”,切换到“脚本编辑”

image.png

输入以下策略文档(JSON 格式)

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                    "oss:ListBuckets",
                    "oss:GetBucketStat",
                    "oss:GetBucketInfo",
                    "oss:GetBucketAcl" 
                      ],    
            "Resource": "acs:oss:*:*:*"
        },
        {
            "Effect": "Allow",
            "Action": [
                    "oss:Get*",
                    "oss:Put*",
                    "oss:List*",
                    "oss:DeleteObject"
                    ],
            "Resource": "acs:oss:*:*:bbs"
        },
        {
            "Effect": "Allow",
            "Action": [
                    "oss:Get*",
                    "oss:Put*",
                    "oss:List*",
                    "oss:DeleteObject"
            ],
            "Resource": "acs:oss:*:*:bbs/*"
        }
    ]
}

脚本中第一段表示允许用户登录,第二段表示允许操作 Bucket,第三段表示允许操作 Bucket 内的文件对象。

示例中的 bbs 是 Bucket Name,请修改为自己的 Bucket 名称。

点击下一步,填写名称,确定即可。


第三步,添加用户权限

转到“用户”页面,在刚才创建的用户行“添加权限”

image.png

切换到“自定义策略”,将上一步创建的权限策略添加到右侧“已选择”区

image.png

确定。


相关信息:

You have no right to access this object because of bucket acl.

xoyozo 3 个月前
265

Discuz! X3.4 需要写入权限的目录:

  • /自研目录/upload/

  • /config/

  • /data/

  • /uc_client/data/

  • /uc_server/data/

  • /source/plugin/


nginx 站点 .conf 配置:

# 可写目录禁执行
location ~ ^/自研目录/upload/.*\.(php|php5|py|sh|out)?$ { deny all; }
location ~ ^/config/.*\.(php|php5|py|sh|out)?$ { deny all; }
location ~ ^/data/.*\.(php|php5|py|sh|out)?$ { deny all; }
location ~ ^/uc_client/data/.*\.(php|php5|py|sh|out)?$ { deny all; }
location ~ ^/uc_server/data/.*\.(php|php5|py|sh|out)?$ { deny all; }
location ~ ^(?:(?!(/source/plugin/magmobileapi/magmobileapi\.php|/source/plugin/smstong/accountinfo\.php|/source/plugin/smstong/checkenv\.php))/source/plugin/.*\.(php|php5|py|sh|out)?)$ { deny all; }

前 5 句好理解,分别表示以下 5 个目录的中所有的 .php 等后缀名的文件不可在浏览器中打开:

/自研目录/upload/

/config/

/data/

/uc_client/data/

/uc_server/data/

最后一句用到正则表达式中的“不捕获”和“零宽断言”语法,格式为:

^(?:(?!(允许的文件A|允许的文件B))禁止的目录)$

实现效果:

/source/plugin/ 中的所有 .php 等文件不可在浏览器中打开,但文件这些文件例外:

/source/plugin/magmobileapi/magmobileapi.php

/source/plugin/smstong/accountinfo.php

/source/plugin/smstong/checkenv.php


特别注意:上面的代码必须加在 PHP 引用配置(include enable-php-**.conf;)的上方才有效。

xoyozo 3 个月前
274

外星人笔记本电脑键盘突然失灵,尝试过重启电脑、长按电源键(强制关机、切换电脑性能)、卸载键盘驱动、BIOS 恢复默认设置都没有效果。

后自动恢复正常,总结经验:关机、拔掉电源、插上电源、再开机,就能恢复正常。

xoyozo 3 个月前
613