本文最后更新于48 天前,其中的信息可能已经过时,如有错误请发送邮件到PZ_0828@163.com
因为最初在搭建博客的时候并没有申请域名,所以刚开始的博客域名就是一串数字,显得不太专业,也没有记忆点,不便于他人的访问,而且这样暴露IP地址无异于找打😓
总的来说,IP访问转化为域名访问好处多多。话不多说,让我们开始转化的过程吧!
一、域名解析
登录域名注册商后台
- 首先,你需要登录到你购买域名的注册商账户。不同的域名注册商后台界面可能略有不同,但一般都有 “域名解析” 或 “DNS 解析” 这样的选项。
添加 A 记录
- 在域名解析设置中,添加一条 A 记录。将主机记录(例如 “@”,代表主域名)指向你的服务器 IP 地址。这样,当用户访问你的域名时,就可以通过这个 A 记录解析到你的服务器。
二、修改 WordPress 网站设置
登录 WordPress 后台
- 使用管理员账号登录到 WordPress 管理后台(网址通常是http://your_ip_address/wp – admin,其中 your_ip_address 是服务器 IP 地址)。
修改站点地址和首页地址
- 在 WordPress 后台的 “设置”>“常规” 选项卡中,找到 “站点地址(URL)” 和 “WordPress 地址(URL)” 两个字段。
- 将这两个字段中的 IP 地址替换为新申请的域名。例如,如果原来是http://your_ip_address,现在改为http://your_domain_name(your_domain_name 是申请的域名)。
通过数据库修改(法二)
首先,您需要访问WordPress的数据库,并修改其中的IP地址为您的域名。可以使用phpMyAdmin工具来完成此操作。
# 下载并安装phpMyAdmin
sudo apt-get install phpmyadmin
上传到服务器并访问
http://yourdomain.com/phpmyadmin
登录phpMyAdmin后,找到WordPress数据库中的wp_options表,将其中的siteurl和home字段的值修改为你的域名。
三、 修改Nginx配置
如果使用的是Nginx服务器,还需要修改Nginx的配置文件,将server_name设置为域名
# 编辑Nginx配置文件
sudo vim /etc/nginx/sites-available/wordpress
# 修改server_name
server {
listen 80;
server_name yourdomain.com;
}
# 保存并重启Nginx服务:
sudo systemctl restart nginx
四、相关问题
当我配置完全后,突发奇想,想看看通过IP访问是什么样子,结果相关的js\css\img资源都加载不出来,后面排查原因后发现:我的网站申请了SSL证书,但SSL 证书是为域名申请的,如果通过 IP 地址访问 HTTPS,可能会导致证书验证失败,因为证书中的域名与实际访问的 IP 地址不匹配。
如果你也出现了此类问题,那么我推荐以下操作
通过nginx进行重定向操作
server {
listen 80;
server_name your_server_ip;
return 301 http://your_domain_name$request_uri;
}
server {
listen 80;
server_name your_domain_name www.your_domain_name;
# 原有的 WordPress 网站配置内容,如 root、index 等指令保持不变
root /path/to/your/wordpress;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$args;
}
# 其他原有配置内容
}
在上面的配置中,第一个 server 块监听服务器的 IP 地址(your_server_ip 替换为你的实际服务器 IP),并将所有请求重定向(使用 301 永久重定向,有助于 SEO)到域名 your_domain_name(替换为你的实际域名)。第二个 server 块是原有的用于处理域名访问的配置。
如果你希望将 HTTP 和 HTTPS 的 IP 访问都重定向到域名,还需要考虑 HTTPS 的配置,可以使用 Let's Encrypt 等工具来为域名申请免费的 SSL 证书。然后在 Nginx 配置中添加相应的 HTTPS 重定向配置。