CentOS7系統搭建web環境 php&nginx&pgsql

今♀妃惜彼發表於2024-06-20

環境:VMware、CentOS-7-x86_64-DVD-2009.iso、nginx-1.26.1、php-7.2.0、postgresql-12

php最好安裝對應php專案所需版本,否則會出現不相容問題。

一、VMware安裝CentOS7作業系統

下載 Linux Centos 7 映像:https://mirrors.aliyun.com/centos/7/isos/x86_64/?spm=a2c6h.25603864.0.0.62e64511P2vJCT

選擇“CentOS-7-x86_64-DVD-2009.iso

新建虛擬機器

  1. 預設 典型(推薦),下一步
  2. 稍後安裝作業系統,下一步
  3. Linux,版本 CentOS 7 64位,下一步
  4. 自行調整名稱、位置,下一步
  5. 預設(拆分成多個檔案),下一步
  6. 完成
  7. 編輯虛擬機器設定
    網路介面卡,橋接模式(不用勾選“複製物理網路連線狀態”)
    CD/DVD,選擇剛才下載的ISO映像檔案
    選項 -> 高階 -> 韌體型別(選擇UEFI)確定

開啟虛擬機器

  1. 選擇第一個“Install CentOS 7”回車
  2. 等待彈出窗體,拉到最下選擇“中文”簡體中文,繼續
  3. 點選安裝位置,什麼也不用動,左上角點選完成
  4. 網路和主機名,乙太網開關開啟,左上角點選完成
  5. 開始安裝
  6. 配置 Root 密碼,左上角點選完成
  7. 等待安裝
  8. 重啟

二、安裝PostgreSQL資料庫

 PostgreSql官網 -> Download -> 選擇Linux -> 再選擇Red Hat/Rocky/AlmaLinux -> 選擇(版本“12”平臺“Red Hat Enterprise, CentOS, Scientific or Oracle version 7”架構“x86_64”)

 選擇完後,下面有對應命令,逐步執行即可

sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql12-server --安裝
sudo /usr/pgsql-12/bin/postgresql-12-setup initdb --初始化資料庫
sudo systemctl enable postgresql-12 --開機啟動 postgresql-12 服務
sudo systemctl start postgresql-12 --啟動 postgresql-12 服務

修改密碼
su - postgres    --切換使用者
psql        --進入sql皮膚
alter user postgres with password 'postgres'; --修改密碼,預設沒有密碼
\q         --退出sql皮膚
exit        --退出postgres使用者shell會話

配置外網也可以連線資料庫
/var/lib/pgsql/12/data/pg_hba.conf(
輸入“:86”跳轉86行;
按“i”編輯模式;
================================按照如下修改
# IPv4 local connections:
host all all 0.0.0.0/0 md5
# IPv6 local connections:
host all all ::1/128 md5
================================
按“Esc”退出編輯模式
輸入“:wq”儲存退出)

vi /var/lib/pgsql/12/data/postgresql.conf(
:60 --跳轉60行
將“#listen_addresses = 'localhost'”改為 “listen_addresses = '*'”)

sudo systemctl restart postgresql-12   --重新啟動服務

psql -h localhost -p 5432 -U postgres  --驗證連線
\q                    --退出

firewall-cmd --zone=public --add-port=5432/tcp --permanent --開啟5432埠

firewall-cmd --reload   --重啟防火牆

三、安裝php 7.2.0

下載包php-7.2.0.tar.gz


安裝依賴:yum -y install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel icu libicu libicu-devel gcc-c++ php-pgsql php-pdo-pgsql postgresql-devel

mkdir /usr/local/php   --建立目錄

scp D:\System\tar.gz\php-7.2.0.tar.gz root@ip:/usr/local/php --將本地包複製到伺服器(用powershell執行此命令)

cd /usr/local/php --切換目錄

tar -zxvf /usr/local/php/php-7.2.0.tar.gz --解壓

cd php-7.2.0         --切換目錄

編譯:./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-pdo-pgsql --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --enable-intl --enable-pcntl --enable-ftp --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-gettext --disable-fileinfo --enable-opcache --with-xsl

make && make install --安裝

cp php.ini-production /usr/local/php/etc/php.ini     --把php.ini複製到安裝目錄下的配置檔案目錄

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm --將php-fpm控制指令碼加入到/etc/init.d/下

chmod +x /etc/init.d/php-fpm --給予可執行許可權

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

vi /usr/local/php/etc/php-fpm.conf(按照如下修改
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
log_level = notice)

vi /usr/local/php/etc/php-fpm.d/www.conf(按照如下修改
user = www
group = www)

sudo groupadd www --建立“www”組

sudo useradd -r -g www www --建立“www”使用者並新增到 www 組

php-fpm命令(執行啟動
/etc/init.d/php-fpm start #啟動
/etc/init.d/php-fpm stop #停止
/etc/init.d/php-fpm restart #重啟
chkconfig php-fpm on     #開機啟動)

vi /etc/profile(在末尾新增export PATH="/usr/local/php/bin:$PATH") --將php新增到環境變數

source /etc/profile --重新載入

php -v

四、安裝nginx 1.26.1

下載包nginx-1.26.1.tar.gz


mkdir /usr/local/nginx --建立目錄

scp D:\System\tar.gz\nginx-1.26.1.tar.gz root@ip:/usr/local/nginx --將本地包複製到伺服器(用powershell執行此命令)

tar -zxvf /usr/local/nginx/nginx-1.26.1.tar.gz --解壓

yum install -y gcc zlib zlib-devel openssl openssl-devel pcre pcre-devel --安裝依賴

cd /usr/local/nginx/nginx-1.26.1 --切換目錄

./configure --編譯

make && make install --安裝

firewall-cmd --zone=public --add-port=80/tcp --permanent --開啟80埠

firewall-cmd --reload --重啟防火牆

/usr/local/nginx/sbin/nginx --啟動nginx
 
瀏覽器位址列輸入http://ip出現如下圖,安裝成功

 

五、自行配置nginx.conf

vi /usr/local/nginx/conf/nginx.conf

https://www.baidu.com/

相關文章