返回

FreeBSD7.0编译安装nginx+php+mysql详解

电脑技巧

搭建一个功能齐全的 LAMP 环境,助力您的 Web 开发之旅

作为一名初出茅庐的 Web 开发人员,您可能正在寻找一种简单有效的方法来设置一个 LAMP 环境。LAMP 栈由 Linux、Apache、MySQL 和 PHP 组成,是托管和运行 Web 应用程序的热门选择。在本指南中,我们将逐步指导您完成设置 LAMP 环境的详细过程,使您能够轻松地开始构建您的 Web 项目。

1. 系统准备

首先,确保您的系统已更新且已安装以下软件包:

  • Apache Web 服务器
  • MySQL 数据库服务器
  • PHP 编程语言

2. MySQL 安装

解压 MySQL 源代码包并转到解压后的目录中。运行以下命令进行配置:

./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-plugins=innobase --with-mysqld-user=mysql --with-unix-socket-path=/tmp/mysql.sock

配置完成后,编译并安装 MySQL:

make && make install

创建 MySQL 用户和组:

groupadd mysql
useradd -g mysql mysql -s /sbin/nologin

初始化 MySQL 数据库:

/usr/local/mysql/scripts/mysql_install_db --user=mysql

启动 MySQL 服务:

/usr/local/mysql/bin/mysqld_safe &

3. Nginx 安装

解压 Nginx 源代码包并转到解压后的目录中。运行以下命令进行配置:

./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_gzip_static_module

配置完成后,编译并安装 Nginx:

make && make install

启动 Nginx 服务:

/usr/local/nginx/sbin/nginx

4. PHP 安装

解压 PHP 源代码包并转到解压后的目录中。运行以下命令进行配置:

./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-gd --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/local/lib --with-zlib-dir=/usr/local/lib --with-libxml-dir=/usr/local/lib --enable-mbstring --with-openssl --with-curl

配置完成后,编译并安装 PHP:

make && make install

5. 配置

将 PHP 可执行文件路径添加到系统路径中:

echo 'export PATH=/usr/local/php/bin:$PATH' >> /etc/profile

创建 PHP-FPM 配置文件:

ln -s /usr/local/php/lib/php.ini /usr/local/nginx/conf/fastcgi.conf

在 Nginx 配置文件中启用 PHP:

echo 'fastcgi_pass 127.0.0.1:9000;' >> /usr/local/nginx/conf/nginx.conf

6. 测试

创建测试目录和 PHP 文件:

mkdir -p /usr/local/www/test
echo "<?php phpinfo(); ?>" > /usr/local/www/test/index.php

测试 Nginx 配置:

/usr/local/nginx/sbin/nginx -t

重新加载 Nginx:

/usr/local/nginx/sbin/nginx -s reload

访问测试页面:

curl http://127.0.0.1/test/index.php

常见问题解答

1. MySQL 无法启动,提示权限不足?

确保您以 root 用户身份或具有 root 权限的用户身份运行 MySQL 命令。

2. Nginx 无法启动,提示端口已被占用?

检查是否还有其他进程正在使用 80 端口。您可以使用 netstat -lntup 命令查找正在监听该端口的进程,然后终止它。

3. PHP 无法连接到 MySQL?

确保 MySQL 正在运行,并且您正在使用正确的凭据连接到它。检查 PHP 配置文件中的 MySQL 设置。

4. PHP 页面显示空白?

检查 PHP 错误日志以了解有关错误的更多信息。确保您已启用 PHP 错误显示。

5. Nginx 返回 404 错误?

确保您的 Web 根目录中存在测试文件,并且 Nginx 配置文件正确指向它。检查 Nginx 日志以了解有关错误的更多信息。