小编ken*_*orb的帖子

如何使用boto和python3在CloudFront中使对象无效?

我在本页底部找到了与我所需的代码相似的代码。

#!/usr/bin/env python3
from boto.cloudfront import CloudFrontConnection

aws_access_key         = 'BJDJLSMQRWDSC4UPLS6S' # Not real
aws_secret_access_key  = '8xRnWKxRR/93TeQv3pwzMNR222nwe5kjhYweCAij' # Not real
aws_cf_distribution_id = 'foobar35'

objects = [ '/index.html' ]
conn = CloudFrontConnection(aws_access_key, aws_secret_access_key)
print(conn.create_invalidation_request(aws_cf_distribution_id, objects))
Run Code Online (Sandbox Code Playgroud)

运行它时,出现以下错误:

$ ./invalidate.py
Traceback (most recent call last):
  File "./invalidate.py", line 14, in <module>
    print(conn.create_invalidation_request(aws_cf_distribution_id, objects))
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/boto/cloudfront/__init__.py", line 263, in create_invalidation_request
    raise CloudFrontServerError(response.status, response.reason, body)
boto.cloudfront.exception.CloudFrontServerError: CloudFrontServerError: 404 Not Found
<?xml version="1.0"?>
<ErrorResponse xmlns="http://cloudfront.amazonaws.com/doc/2010-11-01/">
  <Error>
    <Type>Sender</Type>
    <Code>NoSuchDistribution</Code>
    <Message>The specified distribution does not exist.</Message>
  </Error> …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 python-3.x boto3

3
推荐指数
2
解决办法
2392
查看次数

如何使用XPath选择链接的内部文本?

Scrapy用来抓取数据。

JS浏览器的控制台上,我键入$x('//div[@class="summary"]//div[contains(@class, "tags")]')以获取所需的内容,但需要过滤数据。

下图是$x('//div[@class="summary"]//div[contains(@class, "tags")]')命令结果。

JS控制台结果

我应该如何编写xpath命令以获取绿色框中的数据?我尝试过$x('//div[@class="summary"]//div[contains(@class, "tags")]//a[contains(@class, "post-tag")]'),但这不是我想要的吗?

谢谢!

javascript css xpath href scrapy

3
推荐指数
1
解决办法
551
查看次数

如何执行shell作为后构建操作?

我正在使用Jenkins CI,我想添加一些后期构建操作.

我试图在Jenkins帖子中的post build之后遵循Execute Shell Script中的建议,但我找不到应该允许我执行shell命令的选项(Post build task).我可以选择Execute shell,但仅适用于Build.

以下是我的所有选择:

Jenkins  - 添加构建后操作

成绩单:

添加构建后操作:

  • 汇总下游测试结果
  • 存档工件
  • 建立其他项目
  • 控制台输出(构建日志)解析
  • GitHub PR:添加标签
  • GitHub PR:关闭PR
  • GitHub PR:发表评论
  • GitHub PR:删除标签
  • GitHub PR:设置PR状态
  • 发布HTML报告
  • 发布JUnit测试结果报告
  • 发布Javadoc
  • 记录文件的指纹以跟踪使用情况
  • 使用其他项目的发布者
  • Git Publisher
  • 建立其他项目(手动步骤)
  • 电子邮件通知
  • 可编辑的电子邮件通知
  • 在GitHub提交上设置构建状态[不建议使用]
  • 设置GitHub commit [universal]的状态
  • 触发参数化其他项目的构建
  • 构建完成后删除工作区

我错过了什么?


基本上我需要这个来在销售错误的情况下销毁我的VM实例(例如vagrant destroy -f).

我正在使用Jenkins ver.2.7.1.

jenkins jenkins-plugins

3
推荐指数
1
解决办法
1万
查看次数

AH00072:make_sock:无法绑定到地址[::]:80(13)权限被拒绝

升级到macOS Sierra我的apache后无法启动.

apache的地方error_log:

AH00112: Warning: DocumentRoot [/usr/docs/dummy-host.example.com] does not exist

AH00112: Warning: DocumentRoot [/usr/docs/dummy-host2.example.com] does not exist

AH00557: httpd: apr_sockaddr_info_get() failed for username.local

AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message (13)Permission denied:

AH00072: make_sock: could not bind to address [::]:80 (13)Permission denied: 

AH00072: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down*
Run Code Online (Sandbox Code Playgroud)

我已经按照这些说明没有成功:http://digitalshore.io/local-web-development-environment-apache-macos-sierra-10-12/

apache macos-sierra

3
推荐指数
1
解决办法
2万
查看次数

s3fs_check_service:无效凭据 - 检查服务的结果

s3fs用于将 wrt 安装到 s3 存储桶

我的 S3 存储桶是 AES256 加密的

mount命令是

s3fs -o dbglevel=info -o allow_other  -o use_sse=1 -o use_cache=/tmp bucketname /s3mnt 
Run Code Online (Sandbox Code Playgroud)

这样做我没有收到任何错误消息,但没有发生挂载

/var/log/messages
Run Code Online (Sandbox Code Playgroud)

有这些错误

s3fs.cpp:s3fs_check_service(3765): invalid credentials - result of checking service
Run Code Online (Sandbox Code Playgroud)

4 月 14 日 12:23:31 ip-10-245-10-14 s3fs[74691]: curl.cpp:CheckBucket(2899): 检查桶失败,S3 响应:

s3fs -o dbglevel=info -o allow_other  -o use_sse=1 -o use_cache=/tmp bucketname /s3mnt 
Run Code Online (Sandbox Code Playgroud)

有什么帮助吗?

amazon-s3 amazon-web-services s3fs

3
推荐指数
1
解决办法
2653
查看次数

如何在Amazon Linux AMI上为SQL Server安装PHP的Microsoft驱动程序

我正在尝试使用Microsoft提供的文档为SQL Server安装PHP的Microsoft驱动程序。链接是https://github.com/Microsoft/msphpsql

它提供了Ubuntu和Redhat的安装步骤,但没有提供Amazon Linux的安装步骤。要在Amazon上安装Microsoft驱动程序,我遵循为Redhat提供的步骤(不确定它是否正确)。当我运行命令

sudo ACCEPT_EULA=Y yum install msodbcsql mssql-tools
Run Code Online (Sandbox Code Playgroud)

出现以下错误

Error: Package: msodbcsql-13.1.7.0-1.x86_64 (packages-microsoft-com-prod)
           Requires: unixODBC >= 2.3.1
           Available: unixODBC-2.2.14-14.7.amzn1.i686 (amzn-main)
               unixODBC = 2.2.14-14.7.amzn1
Run Code Online (Sandbox Code Playgroud)

该错误清楚地表明,要安装msodbcsql,unixODBC版本应为> = 2.3.1。但是可用于亚马逊的更新/最新的unixODBC软件包是unixODBC-2.2.14。

我需要一些帮助,以便在Amazon Linux上安装适用于PHP的Microsoft驱动程序,以便可以使用Sqlsrv PHP函数连接SQL Server。

PHP7,Apache和SQL Server已设置。

php linux unixodbc amazon-web-services mssql-tools

3
推荐指数
1
解决办法
1506
查看次数

获取常规产品含税价格

我正在尝试获取含税的常规产品价格,但我找不到任何用于此目的的 WooCommerce 函数或变量。

为了获得常规产品的不含税价格,我使用:

$price = $product->get_regular_price();
Run Code Online (Sandbox Code Playgroud)

但如何才能得到正常产品的含税价格呢?

wordpress woocommerce hook-woocommerce woocommerce-rest-api

3
推荐指数
1
解决办法
4938
查看次数

如何在终端屏幕上列出葡萄酒流程?

我知道,我可以通过运行任务管理器:wine taskmgr。但是,我希望在终端屏幕上列出类似于ps(但不使用它)的Wine流程,但仅适用于Wine环境中的流程。

如何使用Wine命令行工具实现这一目标?

wine process

2
推荐指数
1
解决办法
988
查看次数

Docker Swarm模式下的浏览器服务容器

我使用docker-machine创建了3个vm:

docker-machine create -d virtualbox manager1
docker-machine create -d virtualbox worker1
docker-machine create -d virtualbox worker2
Run Code Online (Sandbox Code Playgroud)

这些是他们的IP:

docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER    ERRORS
manager   -        virtualbox   Running tcp://192.168.99.102:2376                                   v1.12.6
worker1   -        virtualbox   Running   tcp://192.168.99.100:2376           v1.13.0-rc5  
worker2   -        virtualbox   Running   tcp://192.168.99.101:2376           v1.13.0-rc5   
Run Code Online (Sandbox Code Playgroud)

然后 docker-machine ssh manager1

和:

docker swarm init --advertise-addr 192.168.99.102:2377
Run Code Online (Sandbox Code Playgroud)

然后worker1和worker2加入到swarm中.

现在我创建了一个覆盖网络:

docker network create -d overlay skynet
Run Code Online (Sandbox Code Playgroud)

并在全局模式下部署服务(节点的1个任务):

VM_IP:SERVICE_PORT[R

节点实际上有1个容器(任务).

现在,我想直接访问我的虚拟主机..或者,至少,我想直接浏览我的服务容器,因为我想用nginx开发我的服务负载均衡器.为此,在我的nginx conf文件中,我想指向一个特定的服务集合器(即现在我在全局模式下有3个节点(1个管理员和2个工作者),所以我有3个任务在运行 - > i我想选择这3个容器中的一个.我怎样才能做到这一点?

[编辑]:我可以指向我的swarm节点,只需浏览到VM_IP:SERVICE_PORT,即:

192.168.99.102:8200

但仍有内部负载平衡.我在想,如果我指向一个特定的swarm节点,我将在该特定节点内使用容器.但是现在没什么.

virtualbox nginx docker docker-swarm katacoda

2
推荐指数
1
解决办法
766
查看次数

如何获取 Twig 中的节点 URL?

我创建了一个 VIEW 页面 -views-view-fields--MYFOOBAR.html.twig

我设法通过以下方式输出图像字段的 URL:

{{ file_url(row._entity.field_image.entity.uri.value) }}
Run Code Online (Sandbox Code Playgroud)

我还管理了如何输出普通数据字段,如文本或数字:

{{ row._entity.field_MYTEXTFIELD.value }}
Run Code Online (Sandbox Code Playgroud)

抱歉,我问了一个愚蠢的问题,但是我怎样才能获得我的节点的 URL?我需要类似的东西:

<a class="full-item-title" href="NODE URL">{{ row._entity.field_MyH1Text.value }}</a>
Run Code Online (Sandbox Code Playgroud)

php drupal twig drupal-8

2
推荐指数
1
解决办法
7970
查看次数