我正在将我的 Java、Tomcat、MySQL 服务器迁移到 AWS EC2。
我已经附加了一个用于存储 MySQL 数据的 EBS 卷。在我的 Web 应用程序中,人们可能会上传图像,我应该坚持。
我的想法有两种选择:
以下是我的笔记,请持怀疑态度,因为我的专长不是服务器,而是软件开发。
EBS plus:S3 存储更贵。(0.15 美元/Gb > 0.1 美元/Gb)
S3 plus:从 EBS 提供静态文件可能会对我的 Web 服务器的性能产生负面影响。这是真的?提供图像是否显着影响服务器性能?对于 S3,我的服务器将不负责提供静态文件。
S3 plus:从 EBS 提供静态文件可能会导致 I/O 成本,尽管它可能很小。
EBS plus:人们说 EBS 更快。
S3 plus:人们说 S3 对于持久性更安全。
EBS plus:无需学习 API:将图像保存到 EBS 卷非常简单。
我无法决定,正在寻求指导。
是否可以通过 DNS 响应发送一个或多个附加记录?
例如,对 www.example.com 的 A 记录的请求是否会导致包含 www.example.com 的 A 记录和 www2.example.com 的 A 记录的响应?
这是否符合标准?它甚至会有所帮助吗?IE。典型的客户端是否会缓存附加记录,以便在不久的将来需要它时,它不会导致另一次往返 DNS 服务器?
我有几个像这样的A记录:
Subdomain IP Address
example.example.com 198.51.100.0
example.com 203.0.113.0
Run Code Online (Sandbox Code Playgroud)
以及如下所示的 CNAME 记录:
Alias Destination
www.example.com example.com
Run Code Online (Sandbox Code Playgroud)
我想让 example.com 抛出一个 301 重定向到 www.example.com。
所以我将最后一个 A 记录更改为:
www.example.com 203.0.113.0
Run Code Online (Sandbox Code Playgroud)
并将 CNAME 记录中的两个 URL 交换为如下所示:
example.com www.example.com
Run Code Online (Sandbox Code Playgroud)
问题:此更改是否会使 example.example.com 解析为 203.0.113.0 而不是 198.51.100.0?
我刚刚在我的 Ubuntu 10.04 服务器上安装了 fail2ban。
当我尝试启动客户端时,它返回:
错误 无法启动服务器。也许旧的套接字文件仍然存在。尝试删除 /var/run/fail2ban/fail2ban.sock。如果您使用 fail2ban-client 启动服务器,则添加 -x 选项即可
我删除了fail2ban.sock,但没有任何改变。我应该如何解决这个问题?
我们在邮件队列中有很多来自某个地址的邮件。我想删除很多。我找到了按主题行删除的方法,但我想按发件人地址进行搜索,这似乎要复杂得多。(注意:这些主要是外发消息。)
一些谷歌搜索在HowToForge上找到了这个命令,但没有解释它的作用。
postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } / spammer@example\.net/ { print $1 }' | tr -d '*!' | postsuper -d -
Run Code Online (Sandbox Code Playgroud)
我试图使用mailqueuemng,但并没有走多远(一方面,它没有--help)。
我的服务器配置为仅使用 HTTPS;这工作正常。
但是当我访问该网站时,我在 Firefox 中收到了这条消息(在 URL 栏旁边):
Firefox 正在阻止此页面
上的内容 即使内容被阻止,大多数网站仍能正常运行。不安全的内容
本网站上的一些未加密元素已被阻止。
该网站运行良好,我只是讨厌收到该消息并且不知道它的含义。
有什么方法可以确定究竟是什么被阻止了?我试着一一关闭网站上的某些功能,但找不到导致这种情况的原因。
这只发生在 Firefox 中。Chrome 没有显示错误消息。
萤火虫 说:
Blocked loading mixed active content "http://jqueryapi.info/?getsrc=ok&ref=https%3A%2F%2Fexample.com%2F"
Run Code Online (Sandbox Code Playgroud)
这似乎是由 javascript 混淆引起的。如果我将 javascript 代码更改为正常,则不会发生这种情况。所以现在我想知道有没有办法绕过这个?
我有一台同时具有 IPv6 和 IPv4 地址的服务器。是否可以通过IPv6接口通过 HTTP 连接到另一个 Web 服务器(我只知道它的 IPv4 地址),以便该服务器只能看到我的 IPv6 IP 作为源地址?
在过去的 3 或 4 年里,我一直在 Win2003 服务器上托管一个域,但我现在需要使该域只能通过 HTTPS 访问。
我已经正确安装了证书并且工作正常(服务器托管多个域,但该域托管在不同的公共 IP 地址上),但我正在努力让 IIS 只转移所有访问http:/ /www.example.com到https://www.example.com。
我在 IIS 中找到了“需要安全通道”选项,但检查此选项会导致任何未能键入该https://部分的人看到错误消息(如下)。将用户重定向到 HTTPS 站点的最佳方法是什么(用户不必担心)?
必须通过安全通道查看页面 您尝试访问的页面已使用安全套接字层 (SSL) 进行保护。
请尝试以下操作:
在您尝试访问的地址的开头键入 https://,然后按 ENTER。
HTTP 错误 403.4 - 禁止:需要 SSL 才能查看此资源。
我的网站可以通过 www.fonix-energia.hu 和 fonix-energia.hu 访问。在第一种情况下,网站似乎分崩离析,而没有www它则可以完美运行。/var/www/fonix文件夹中只有一个站点副本。服务器上根本不应该有替代版本。
这是我的 DNS 配置:这两个地址应该指向同一个地方:
Name TTL Class Type Record
fonix-energia.hu. 14400 IN A 95.85.47.115
localhost.fonix-energia.hu. 14400 IN A 127.0.0.1
mail.fonix-energia.hu. 14400 IN CNAME ghs.googlehosted.com
ftp.fonix-energia.hu. 14400 IN A 195.56.100.77
cpanel.fonix-energia.hu. 14400 IN A 195.56.100.77
webdisk.fonix-energia.hu. 14400 IN A 195.56.100.77
whm.fonix-energia.hu. 14400 IN A 195.56.100.77
webmail.fonix-energia.hu. 14400 IN A 195.56.100.77
autoconfig.fonix-energia.hu. 14400 IN A 195.56.100.77
autodiscover.fonix-energia.hu. 14400 IN A 195.56.100.77
fonix-energia.hu. 14400 IN TXT google-ite-verification=[CENSORED]
www.fonix-energia.hu. 14400 IN CNAME fonix-energia.hu
Run Code Online (Sandbox Code Playgroud)
这是apache2的配置。这里我也认为虚拟主机配置指向相同的位置:
<VirtualHost *:80> …Run Code Online (Sandbox Code Playgroud) 我的印象是只有子域可以有 CNAME 记录:主域需要定义自己的所有记录。但是,apt-get.com似乎只有一个 CNAME 记录。这怎么工作?
$ dig apt-get.com
; <<>> DiG 9.8.1-P1 <<>> apt-get.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45743
;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;apt-get.com. IN A
;; ANSWER SECTION:
apt-get.com. 86336 IN CNAME thie5ku9.dsgeneration.com.
thie5ku9.dsgeneration.com. 60 IN A 208.73.211.242
thie5ku9.dsgeneration.com. 60 IN A 208.73.211.246
thie5ku9.dsgeneration.com. 60 IN A 208.73.211.166
thie5ku9.dsgeneration.com. 60 IN A 208.73.211.232
thie5ku9.dsgeneration.com. 60 …Run Code Online (Sandbox Code Playgroud) 我正在尝试为每个 URL 强制执行 SSL,但第一个段除外/preview。
http://test.example.com/preview/blah/blah
Run Code Online (Sandbox Code Playgroud)
应该被规则忽略;应该强制所有其他 URL 使用 SSL。我正在使用 CentOS 6.4、Apache 和 CodeIgniter。
我的 .htaccess 文件:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} !=on
RewriteCond %{REQUEST_URI} !^/preview/
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
Run Code Online (Sandbox Code Playgroud)
通常 CI URL 在被最后一条规则重写之前看起来像这样:
http://test.example.com/index.php?/preview/blah/blah
Run Code Online (Sandbox Code Playgroud)
我试过了:
RewriteCond %{HTTPS} !=on
RewriteCond %{REQUEST_URI} !^/index.php?/preview/
RewriteCond %{REQUEST_URI} !^/preview/
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Run Code Online (Sandbox Code Playgroud)
那也行不通。我究竟做错了什么?
由于最近东海岸发生了 S3 宕机事件,我想问一下社区实施容错 S3 网站托管解决方案的最佳方法是什么?
根据我的理解,您需要以您的域(例如 example.com)命名一个存储桶。但是这个存储桶是特定于区域的,并且存储桶名称是全局唯一的,因此我无法在另一个区域创建相同的存储桶。因此,如果该区域因 S3 存储桶而关闭,是否意味着我的网站已关闭?
我在 crontab 中有一个 Amazon Linux AMI:
0 7 * * 1 root /usr/bin/wget -q http://localhost/digest_weekly.php -O - >> /var/log/digest_weekly.log
Run Code Online (Sandbox Code Playgroud)
这会在digest_weekly.php每周一早上 7 点调用脚本。该脚本从数据库中收集一些数据并向每个用户发送一封电子邮件。它返回它发送电子邮件的所有电子邮件地址的列表。今天它必须发送 2608 封电子邮件。该脚本需要一段时间才能执行,但我在日志中看不到超时错误。
问题是邮件每 15 分钟再次发送一次。/var/log/digest_weekly.log是空的,所以我猜这项工作没有完成,并且在给它一些时间后,cron 以某种方式再次启动它。我在 Apache 访问日志中看到了这一点:
127.0.0.1 - - [23/May/2016:07:00:01 +0000] "GET /digest_weekly.php HTTP/1.1" 200 70941 "-" "Wget/1.16.1 (linux-gnu)"
127.0.0.1 - - [23/May/2016:07:15:02 +0000] "GET /digest_weekly.php HTTP/1.1" 200 70941 "-" "Wget/1.16.1 (linux-gnu)"
127.0.0.1 - - [23/May/2016:07:30:04 +0000] "GET /digest_weekly.php HTTP/1.1" 200 70917 "-" "Wget/1.16.1 (linux-gnu)"
Run Code Online (Sandbox Code Playgroud)
但在/var/log/cron我只能看到一行:
May 30 07:00:01 ip-172-31-8-62 …Run Code Online (Sandbox Code Playgroud) amazon-ec2 ×2
amazon-s3 ×2
cname-record ×2
ssl ×2
.htaccess ×1
a-record ×1
apache-2.2 ×1
apache-2.4 ×1
cron ×1
email ×1
fail2ban ×1
https ×1
iis-6 ×1
ipv6 ×1
mod-rewrite ×1
networking ×1
postfix ×1
redirect ×1
ubuntu ×1
web ×1
website ×1