上一篇
PHP服务器域名配置教程 | 手把手教你绑定域名到PHP环境
- 云服务器
- 2026-02-12
- 2893
在PHP中配置服务器域名涉及服务器环境(如Apache或Nginx)的设置,而非直接通过PHP代码配置,以下是详细步骤:
Apache 服务器配置
-
编辑虚拟主机文件
找到Apache的虚拟主机配置文件(如 httpd-vhosts.conf 或 /etc/apache2/sites-available/000-default.conf),添加:
<VirtualHost *:80> # 绑定域名 ServerName yourdomain.com ServerAlias www.yourdomain.com # 项目根目录 DocumentRoot "/var/www/html/your_project" <Directory "/var/www/html/your_project"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> # 错误日志(可选) ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> -
启用配置并重启Apache
# 启用站点(Ubuntu) sudo a2ensite your-config-file.conf # 重启Apache sudo systemctl restart apache2
Nginx 服务器配置
-
编辑站点配置文件
修改 /etc/nginx/sites-available/default 或新建配置:
-
重启Nginx
sudo systemctl restart nginx
- 修改本地hosts文件
- Windows: C:WindowsSystem32driversetchosts
- Linux/Mac: /etc/hosts
添加一行: 0.0.1 yourdomain.com
- 在浏览器访问 http://yourdomain.com
- 检查PHP信息页(可选): <?php phpinfo(); ?>
查看 $_SERVER['SERVER_NAME'] 和 $_SERVER['HTTP_HOST'] 的值。


-
403 Forbidden 错误
- 检查项目目录权限:chmod -R 755 /var/www/html/your_project
- 确保Apache/Nginx用户(如 www-data)有读取权限。
-
域名无法解析
- 确保服务器IP已绑定域名(DNS解析生效)。
- 本地测试时检查 hosts 文件是否修改正确。
-
PHP文件不执行
- Apache:确保已加载PHP模块(sudo a2enmod php)。
- Nginx:检查 fastcgi_pass 路径是否正确。
- 域名解析
在域名注册商处将域名解析到服务器IP(A记录)。
- 防火墙配置
开放80/443端口: sudo ufw allow 80/tcp sudo ufw allow 443/tcp
线上服务器额外步骤
通过以上步骤,即可完成PHP项目的域名配置,重点在于服务器(Apache/Nginx)的虚拟主机设置,而非PHP本身。
本地测试配置(修改hosts文件)
PHP代码中获取域名
在PHP脚本中,可通过全局变量获取当前域名:
<?php // 获取当前访问的域名 $current_domain = $_SERVER['HTTP_HOST']; echo "当前域名: " . $current_domain; ?>
验证配置
常见问题解决