国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

Gentoo 下安裝與配置Nginx+ MySQL + PHP (fastcgi) 環境步驟分享

2024-09-01 13:45:00
字體:
來源:轉載
供稿:網友

一、安裝 Nginx

一條命令搞定:
USE=fastcgi emerge nginx

新建用戶和組:
groupadd www
useradd www -g www

Nginx 安裝好后默認會添加 nginx 組和 nginx 用戶,不過我本身還是習慣新建個 www 組和 www 用戶來做 HTTP 服務用戶。若今后 HTTP 服務器更換為 apache 或是 lighttpd 時,用戶名和用戶組可以不變。

二、安裝 MySQL

在裝 PHP 前必須先裝 MySQL,因為 PHP 里的 MySQL 操作函數需要 MySQL 頭文件和庫的支持。
emerge dev-db/mysql

初始化數據庫:
數據庫的默認路徑為 /var/lib/mysql,本文的安裝把它放在 /work/db/3306/data 中。

復制代碼 代碼如下:


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>
測試成功!

三、安裝 PHP

以 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

下載 PHP-FPM 補丁:
wget

解壓 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(根據自身需要):

復制代碼 代碼如下:


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 配置文件:

復制代碼 代碼如下:


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>/tmp/php-fpm.sock</value>

修改用戶組和用戶名:

復制代碼 代碼如下:


Unix user of processes
<value>www</value>
Unix group of processes
<value>www</value>

修改 PHP-FPM 運行模式為 Apache-Like 模式:

復制代碼 代碼如下:


<value>apache-like</value>
<value>1</value>
<value>1</value>
<value>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

添加啟動服務

復制代碼 代碼如下:


rc-update add nginx default
rc-update add mysql default
rc-update add php-fpm default

測試 Nginx+PHP

添加測試站點目錄:

復制代碼 代碼如下:


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 配置如下:

復制代碼 代碼如下:


server {
listen80;
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;
includefastcgi_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

訪問:

顯示正常的 phpinfo 信息,則安裝完成。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 徐闻县| 乌拉特后旗| 凤冈县| 高要市| 化州市| 新丰县| 桂东县| 化德县| 工布江达县| 三都| 吉安县| 绥宁县| 喀什市| 台江县| 安多县| 许昌市| 比如县| 宾阳县| 锡林浩特市| 油尖旺区| 柯坪县| 蒲城县| 临海市| 大渡口区| 和林格尔县| 盐边县| 广平县| 丰城市| 新野县| 白城市| 深泽县| 沐川县| 昌平区| 普格县| 迁西县| 高雄市| 临朐县| 北碚区| 武安市| 靖安县| 信宜市|