
以下是详细的在香港服务器上安装和配置 PHP 和 MySQL 的指南,适用于基于 Linux 系统(如 CentOS、Ubuntu)的服务器。这里假设您已获得服务器的 SSH 访问权限,并且服务器的网络环境可以正常连接到软件源。
一、环境准备
-
连接到服务器:
使用 SSH 连接到您的香港服务器网站:bashssh root@<服务器IP>
-
更新系统软件包:
确保系统软件是最新的:- CentOS:
bash
yum update -y
- Ubuntu:
bash
apt update && apt upgrade -y
- CentOS:
-
检查是否已安装 Web 服务器:
确保服务器上安装了 Web 服务器(如 Apache 或 Nginx)。如果未安装,您可以选择安装:-
安装 Apache:
bash# CentOS yum install httpd -y systemctl start httpd systemctl enable httpd # Ubuntu apt install apache2 -y systemctl start apache2 systemctl enable apache2
-
安装 Nginx:
bash# CentOS yum install nginx -y systemctl start nginx systemctl enable nginx # Ubuntu apt install nginx -y systemctl start nginx systemctl enable nginx
-
二、安装 PHP
-
安装 PHP:
-
CentOS(推荐安装最新版 PHP):
需要启用 EPEL 和 Remi 源:bashyum install epel-release -y yum install yum-utils -y yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y yum-config-manager --enable remi-php81 # 启用 PHP 8.1(或选择其他版本) yum install php php-cli php-fpm php-mysqlnd -y
-
Ubuntu:
添加 PHP PPA 源并安装:bashapt install software-properties-common -y add-apt-repository ppa:ondrej/php -y apt update apt install php php-cli php-fpm php-mysql -y
-
-
验证 PHP 安装:
检查 PHP 版本:bashphp -v
正常情况下会输出 PHP 的版本号。
-
配置 PHP:
编辑 PHP 的主配置文件(通常位于/etc/php.ini
或/etc/php/<版本号>/fpm/php.ini
):bashnano /etc/php.ini
根据需要修改以下参数:
inimax_execution_time = 300 # 脚本最大执行时间(默认 30 秒) memory_limit = 256M # PHP 脚本最大内存使用量 upload_max_filesize = 50M # 上传文件的最大大小 post_max_size = 50M # POST 数据的最大大小
-
重启服务:
- 如果使用 Apache:
bash
systemctl restart httpd
- 如果使用 Nginx,需要同时启动 PHP-FPM:
bash
systemctl restart php-fpm systemctl restart nginx
- 如果使用 Apache:
三、安装 MySQL
-
安装 MySQL:
-
CentOS:
安装 MySQL 官方 Yum 源,并安装 MySQL Server:bashyum install https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm -y yum install mysql-server -y systemctl start mysqld systemctl enable mysqld
-
Ubuntu:
安装 MySQL Server:bashapt install mysql-server -y systemctl start mysql systemctl enable mysql
-
-
获取初始密码:
安装 MySQL 后,初始密码通常存储在日志文件中:bashgrep 'temporary password' /var/log/mysqld.log
记下密码,用于后续登录。
-
登录 MySQL 并修改默认密码:
使用初始密码登录 MySQL:bashmysql -u root -p
修改密码:
sqlALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123!';
-
创建数据库和用户:
根据需要创建数据库和用户:sqlCREATE DATABASE my_website_db; CREATE USER 'my_user'@'localhost' IDENTIFIED BY 'UserPassword123!'; GRANT ALL PRIVILEGES ON my_website_db.* TO 'my_user'@'localhost'; FLUSH PRIVILEGES;
-
测试 MySQL 是否正常运行:
确保 MySQL 服务正常工作:bashsystemctl status mysqld
四、PHP 和 MySQL 的集成测试
-
创建测试 PHP 页面:
创建一个测试页面来验证 PHP 和 MySQL 的连接:bashnano /var/www/html/test.php
添加以下内容:
php<?php $servername = "localhost"; $username = "my_user"; $password = "UserPassword123!"; $dbname = "my_website_db"; // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } echo "连接成功!"; ?>
-
访问测试页面:
在浏览器中访问:http://<服务器IP>/test.php
如果页面显示“连接成功”,说明 PHP 和 MySQL 已正确集成。
五、优化配置
-
优化 MySQL 配置:
编辑 MySQL 配置文件(通常位于/etc/my.cnf
或/etc/mysql/mysql.conf.d/mysqld.cnf
),根据服务器性能调整参数:inimax_connections = 200 innodb_buffer_pool_size = 1G # 根据内存大小调整 query_cache_size = 64M
-
优化 PHP 和 Web 服务器:
-
PHP Opcache:
在 PHP 配置文件中启用 Opcache 提高性能:iniopcache.enable=1 opcache.memory_consumption=128 opcache.max_accelerated_files=10000 opcache.revalidate_freq=2
-
Web 服务器压缩和缓存:
如果使用 Nginx 或 Apache,可以启用 Gzip 压缩和缓存来提升性能。
-
六、设置防火墙规则(可选)
-
开放必要端口:
确保 HTTP、HTTPS 和 MySQL 端口已开放:bash# CentOS firewall-cmd --add-service=http --permanent firewall-cmd --add-service=https --permanent firewall-cmd --add-port=3306/tcp --permanent firewall-cmd --reload # Ubuntu ufw allow 80 ufw allow 443 ufw allow 3306 ufw enable
-
限制 MySQL 外部访问:
如果不需要外部访问 MySQL,请将 MySQL 配置为仅允许本地访问(编辑/etc/mysql/mysql.conf.d/mysqld.cnf
或/etc/my.cnf
):inibind-address = 127.0.0.1
七、总结
通过以上步骤,您已经完成了在香港服务器网站上安装和配置 PHP 和 MySQL,并测试了它们的集成运行。以下是关键总结:
- 安装 PHP 和 MySQL:确保版本兼容,同时优化配置。
- 配置 Web 服务器:确保 PHP 和 MySQL 正常工作。
- 测试集成:通过 PHP 代码验证 PHP 和 MySQL 的连接。
- 优化性能:根据服务器性能优化 PHP 和 MySQL 参数。
如果网站需要部署到生产环境,请进一步加强安全性,例如:使用 HTTPS、配置防火墙规则、开启数据库备份等。
- Tags:
- 香港服务器网站,香港服务器