- 准备工作
确保服务器支持 PHP:
如果是 Linux 服务器(如 Ubuntu/CentOS),需安装 PHP 和 Web 服务器(如 Apache/Nginx)。
如果是 Windows 服务器,可使用 WAMP/XAMPP 集成环境。
访问权限:确保你有服务器的 SSH(Linux)或远程桌面(Windows)权限。
安装 PHP 和 Web 服务器
Linux 示例(Ubuntu)
bash
更新软件包列表
sudo apt update
安装 Apache 和 PHP
sudo apt install apache2 php libapache2modphp phpmysql
重启 Apache
sudo systemctl restart apache2
Nginx 配置(可选)
bash
sudo apt install nginx phpfpm
修改 Nginx 站点配置(/etc/nginx/sitesavailable/default),添加:
nginx
location ~ .php$ {
include snippets/fastcgiphp.conf;
fastcgi_pass unix:/var/run/php/php8.1fpm.sock; 根据 PHP 版本调整
}
上传 PHP 脚本
方法 1:SCP/SFTP(推荐)
bash
scp /path/to/your/script.php user@server_ip:/var/www/html/
方法 2:FTP(如 FileZilla)
连接到服务器,上传文件到 Web 根目录(通常为 /var/www/html/)。
- 设置文件权限
bash
确保 Apache/Nginx 用户有权访问文件
sudo chown R wwwdata:wwwdata /var/www/html/
sudo chmod R 755 /var/www/html/
测试 PHP
创建一个测试文件 /var/www/html/info.php:
php
<?php phpinfo(); ?>
访问 http://your_server_ip/info.php,确认显示 PHP 信息页。
- 配置数据库(如需 MySQL)
bash
sudo apt install mysqlserver phpmysql
sudo mysql_secure_installation
在 PHP 脚本中连接数据库:
php
$conn = new mysqli(“localhost”, “username”, “password”, “database_name”);
域名绑定(可选)
修改 Apache/Nginx 配置,将域名指向你的 PHP 脚本目录。
示例(Apache):
apache
<VirtualHost :80>
ServerName yourdomain.com
DocumentRoot /var/www/html/
</VirtualHost>
重启服务:
bash
sudo systemctl restart apache2
- 安全优化
禁用危险函数:编辑 php.ini,设置:
ini
disable_functions = exec,passthru,shell_exec,system
安装 HTTPS 证书(如 Let’s Encrypt):
bash
sudo apt install certbot python3certbotapache
sudo certbot apache
常见问题
403 错误:检查文件权限或 Apache/Nginx 配置。
500 错误:查看服务器日志(/var/log/apache2/error.log)。
PHP 不执行:确保 Web 服务器已正确配置处理 php 文件。