源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Gentoo 下安装与配置Nginx+ MySQL + PHP (fastcgi) 环境步骤分享

  • 时间:2021-04-24 01:19 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Gentoo 下安装与配置Nginx+ MySQL + PHP (fastcgi) 环境步骤分享
[b]一、安装 Nginx [/b]一条命令搞定: USE=fastcgi emerge nginx 新建用户和组: groupadd www useradd www -g www Nginx 安装好后默认会添加 nginx 组和 nginx 用户,不过我本身还是习惯新建个 www 组和 www 用户来做 HTTP 服务用户。若今后 HTTP 服务器更换为 apache 或是 lighttpd 时,用户名和用户组可以不变。 [b]二、安装 MySQL [/b]在装 PHP 前必须先装 MySQL,因为 PHP 里的 MySQL 操作函数需要 MySQL 头文件和库的支持。 emerge dev-db/mysql 初始化数据库: 数据库的默认路径为 /var/lib/mysql,本文的安装把它放在 /work/db/3306/data 中。
[u]复制代码[/u] 代码如下:
mkdir -p /work/db/3306/data mysql_install_db --basedir=/usr --datadir=/work/db/3306/data --user=mysql
修改配置文件: vim /etc/mysql/my.cnf 将 datadir 修改为: datadir = /work/db/3306/data 启动 MySQL: /etc/init.d/mysql start 修改 root 密码: mysqladmin -uroot password hily 测试数据库: mysql -uroot -p 显示: gentoo setup # mysql -uroot -p Enter password: Welcome to the MySQL monitor.  Commands end with ; or g. Your MySQL connection id is 2 Server version: 5.0.84-log Gentoo Linux mysql-5.0.84-r1 Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. mysql> 测试成功! [b]三、安装 PHP [/b]以 fastcgi 方式来运行 PHP,需要安装 PHP-FPM。 目前最后一个需要以 patch 形式安装 PHP-FPM 的 PHP 版本是 5.3.0,PHP 5.3.2 版本中将可能直接集成 PHP-FPM。 这里我就使用 PHP 5.3.0 来安装。 因为 Gentoo 中目录还没有集成 PHP-FPM 的 Portage,所以下面直接通过源码编译形式进行安装。 下载 PHP 5.3.0: wget http://cn.php.net/distributions/php-5.3.0.tar.bz2 下载 PHP-FPM 补丁: wget http://php-fpm.org/downloads/php-5.3.0-fpm-0.5.12.diff.gz 解压 PHP 并打 FPM 补丁: tar jxf php-5.3.0.tar.bz2 gzip -cd php-5.3.0-fpm-0.5.12.diff.gz | patch -d php-5.3.0 -p1 安装 PHP 需要的库(根据自身需要): emerge libpng emerge jpeg emerge freetype USE="png jpeg truetype" emerge gd 或直接: USE="png jpeg truetype" emerge gd 配置并编译 PHP(根据自身需要):
[u]复制代码[/u] 代码如下:
cd php-5.3.0 ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr --with-mysqli=/usr/bin/mysql_config --enable-fpm --enable-sockets --enable-pdo --with-pdo-mysql=/usr --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-zlib make && make install
PHP 配置文件:
[u]复制代码[/u] 代码如下:
cp php.ini-production /usr/local/php/etc/php.ini
PHP-FPM 配置文件: vim /usr/local/php/etc/php-fpm.conf 修改 listen_address 为 socket 地址(socket 比 IP:Port 高效): <value name="listen_address">/tmp/php-fpm.sock</value> 修改用户组和用户名:
[u]复制代码[/u] 代码如下:
Unix user of processes <value name="user">www</value> Unix group of processes <value name="group">www</value>
修改 PHP-FPM 运行模式为 Apache-Like 模式:
[u]复制代码[/u] 代码如下:
<value name="style">apache-like</value> <value name="StartServers">1</value> <value name="MinSpareServers">1</value> <value name="MaxSpareServers">5</value>
StartServers、MinSpareServers 和 MaxSpareServers 根据实际需要设置,我这里是虚拟机,没必要太大。 PHP-FPM 启动脚本: cp /usr/local/php/sbin/php-fpm /etc/init.d/php-fpm 启动 PHP-FPM /etc/init.d/php-fpm start 添加启动服务
[u]复制代码[/u] 代码如下:
rc-update add nginx default rc-update add mysql default rc-update add php-fpm default
测试 Nginx+PHP 添加测试站点目录:
[u]复制代码[/u] 代码如下:
mkdir -p /work/www/test echo "<?php phpinfo(); ?>" > /work/www/test/index.php
添加测试站点的 Nginx 配置: vim /etc/nginx/nginx.conf 注释掉 server 段,在 http 段尾部加上: include sites/*.enable; 之后每个站点的配置文件都以一个独立的文件保存在 /etc/nginx/sites 目录下,方便管理和维护。 mkdir /etc/nginx/sites vim /etc/nginx/test.enable test.enable 配置如下:
[u]复制代码[/u] 代码如下:
   server {     listen       80;     server_name  test.local;     access_log  /work/www/logs/test.access.log  main;     error_log  /work/www/logs/test.error.log;     location / {     root   /work/www/test;     index  index.html index.htm index.php;     }     location ~ .php$ {     root           /work/www/test;     fastcgi_index  index.php;     fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;     include        fastcgi_params;     fastcgi_pass   unix:/tmp/php-fpm.sock;     }     }
新建存储日志目录: mkdir /work/www/logs 本地 hosts 中添加记录: 192.168.1.10    test.local 192.168.1.10 是我这台 Gentoo 机器的 IP。 重新加载 Nginx 配置 /etc/init.d/nginx reload 访问: http://test.local/ 显示正常的 phpinfo 信息,则安装完成。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部