基于快照恢复的Lightsail Ubuntu实例配置后访问域名出现ERR_CONNECTION_TIMED_OUT问题排查求助
排查ERR_CONNECTION_TIMED_OUT问题的关键步骤
让我帮你梳理下可能漏掉的关键操作,这种连接超时问题大多出在网络、服务配置或者DNS层面,咱们一步步来排查:
1. 检查Lightsail实例的防火墙规则
新建实例后,默认的Lightsail防火墙可能没对外开放Web服务需要的端口:
- 登录Lightsail控制台,找到你的新实例,进入「网络」标签页
- 确认防火墙规则里有没有添加**HTTP (80)和HTTPS (443)**的允许规则,来源设置为
0.0.0.0/0(允许所有IP访问) - 同时检查实例内部的防火墙(比如Ubuntu的ufw),执行命令:
如果80/443端口没开放,执行:sudo ufw statussudo ufw allow 80/tcp sudo ufw allow 443/tcp
2. 确认Web服务的状态与配置生效
看你的配置用的是Apache,得确保服务正常运行且配置已重载:
- 检查Apache状态:
如果没启动,执行sudo systemctl status apache2sudo systemctl start apache2,顺便设置开机自启:sudo systemctl enable apache2 - 每次修改虚拟主机配置后,必须重载服务让配置生效:
sudo systemctl reload apache2 - 提前检查配置语法是否正确,避免报错:
sudo apache2ctl configtest
3. 验证DNS解析是否正确绑定静态IP
你绑定了静态IP,但域名的DNS记录可能还没更新:
- 去你的域名注册商后台,检查A记录(如果用IPv6就是AAAA记录)是否指向新的Lightsail静态IP
- 在本地电脑上用命令测试解析是否生效:
确保返回的IP是你新实例的静态IP,DNS生效可能需要几分钟到几小时,耐心等一下。nslookup mysite.com # 或者 dig mysite.com
4. 修正虚拟主机配置的细节问题
你的当前配置有几个小问题需要调整:
ServerName应该设置为你的实际域名,而不是mysite,同时ServerAlias可以加上www前缀(如果需要支持),修改后的配置示例:<VirtualHost *:80> ServerName mysite.com ServerAlias www.mysite.com DocumentRoot /var/www/wordpress <Directory /var/www/wordpress> Options FollowSymLinks AllowOverride All # 改成All才能让.htaccess的规则完全生效 DirectoryIndex index.php Require all granted </Directory> <Directory /var/www/wordpress/wp-content> Options FollowSymLinks Require all granted </Directory> </VirtualHost>- 确保配置文件放在Apache的
sites-available目录下,然后启用站点:
之后记得重载Apache服务。sudo a2ensite your-config-filename.conf
5. 修正WordPress内部的站点URL配置
从快照恢复后,WordPress数据库里的旧URL可能还没更新,会导致跳转异常:
- 最简单的方法是修改
wp-config.php,在文件末尾添加两行:define('WP_HOME','http://mysite.com'); define('WP_SITEURL','http://mysite.com'); - 也可以通过MySQL命令修改数据库(记得替换
wp_为你的表前缀):UPDATE wp_options SET option_value = 'http://mysite.com' WHERE option_name = 'siteurl'; UPDATE wp_options SET option_value = 'http://mysite.com' WHERE option_name = 'home';
6. 检查.htaccess文件的权限与内容
.htaccess文件的权限或内容错误也可能导致问题:
- 确保文件在
/var/www/wordpress目录下,设置正确的权限:sudo chmod 644 /var/www/wordpress/.htaccess sudo chown www-data:www-data /var/www/wordpress/.htaccess - 如果文件内容不对,可以用默认的WordPress规则替换:
也可以登录WordPress后台,进入「设置-固定链接」点击「保存更改」自动生成正确的.htaccess内容。# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
建议你先从防火墙和DNS这两步开始排查,因为连接超时最常见的原因就是这两个环节没配置对。
内容的提问来源于stack exchange,提问作者m41130
相关产品推荐
相关产品推荐

