Centos搭建開發環境,PHP7+ Nginx1.12+ Mysql5.7

来源:https://www.cnblogs.com/muwu/archive/2018/01/30/8385928.html
-Advertisement-
Play Games

1.更新yum源 yum -y update 2. 安裝 epel-release yum install epel-release -y 檢測安裝成功:yum search nginx 結果含有:nginx.x86_64 : A high performance web server and re ...


1.更新yum源

yum -y update

 

2. 安裝 epel-release

yum install epel-release -y

檢測安裝成功:yum search nginx  結果含有:nginx.x86_64 : A high performance web server and reverse proxy server 表示成功

CentOS 系列的伺服器系統有一個毛病,就是官方自帶的源的軟體比較古老,並且很多的軟體都沒有。因為他們的首要任務是保證伺服器的穩定,而不是追求最新。但是太過於保守了,一般來說,我們會給伺服器添加一個 epel-release 這個源。這個源里包含了例如 nginx 之類的我們需要的軟體,使用起來比較方便。

 

3.安裝伺服器常用軟體

yum -y install vim*  

Vim是一個類似於Vi的著名的功能強大、高度可定製的文本編輯器

yum install wget

wget 是一個從網路上自動下載文件的自由工具,支持通過 HTTP、HTTPS、FTP 三個最常見的 TCP/IP協議 下載,並可以使用 HTTP 代理。

yum -y install lrzsz

lrzsz是一款在linux里可代替ftp上傳和下載的程式。

yum install zip unzip

作用:zip壓縮、unzip解壓縮  

 

4.安裝Nginx

nginx 依賴的一些 lib 庫:

yum install gcc-c++
yum install pcre pcre-devel
yum install zlib zlib-devel
yum install openssl openssl--devel 

安裝 Nginx

cd /usr/local

打開 usr 下的 local 文件夾

yum install nginx -y

安裝Nginx,此安裝的包已經是更新過的源

systemctl start nginx

啟動 nginx

systemctl enable nginx

將 nginx 設置為開機啟動

完成安裝在瀏覽器訪問主機 ip ,看看是否能打開。

 

5.安裝PHP7

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

安裝php7的rpm包

yum search php7

查詢下自己的php7是哪個版本以及擴展庫,例如:php70w、php71w、php72w、php70w-fpm等

yum install php70w

以自己的包為準

yum install php70w-openssl php70w-common php70w-fpm php70w-mysql php70w-mysqld php70w-pdo 

安裝PHP7的擴展庫的版本號和PHP7的版本對應,也就是 php70w 的版本對應同版本的擴展庫 php70w-fpm等。

 

6.安裝Mysql

wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

下載mysql源安裝包

rpm -ivh mysql57-community-release-el7-8.noarch.rpm

安裝mysql源

yum -y install mysql-server

安裝mysql

service mysqld start

systemctl start mysqld

啟動mysql伺服器

systemctl status mysqld

查看mysql狀態

systemctl enable mysqld
systemctl daemon-reload

開機啟動

grep 'temporary password' /var/log/mysqld.log

mysql安裝完成之後,在/var/log/mysqld.log文件中給root生成了一個預設密碼。通過上面的方式找到root預設密碼( :後面為密碼),然後登錄mysql進行修改

mysql -uroot -p

按回車,輸入剛纔的臨時密碼,進入mysql來修改密碼

set global validate_password_policy=0;

mysql5.7預設安裝了密碼安全檢查插件(validate_password),預設密碼檢查策略要求密碼必須包含:大小寫字母、數字和特殊符號,並且長度不能少於8位。否則會提示ERROR報錯。

此處代碼用來修改密碼強度:0 or LOW(密碼任意,但長度在 8 位或以上)。

set global validate_password_length=4;

設置的密碼少於8位,請執行上述命令(最少是4)

set password for 'root'@'localhost'=password('新密碼');

執行此代碼修改mysql登陸密碼

GRANT ALL PRIVILEGES ON *.* TO 'yourname'@'%' IDENTIFIED BY 'YourPassword@123' WITH GRANT OPTION;

添加遠程登錄用戶,預設只允許root帳戶在本地登錄,如果要在其它機器上連接mysql,必須修改root允許遠程連接,執行上述代碼。

 

7.配置php、nginx

配置php

vim /etc/php.ini

修改 php.ini 把 cgi.fix_pathinfo 的值改為0 ,前面有 ;的話去掉,大約在763行,進入文件後  輸入 :763 定位過去。

vim /etc/php-fpm.d/www.conf

修改 www.cong 修改兩處

listen.owner = nobody

listen.group = nobody

這兩行前面的  ;去掉

user = apache
group = apache

將apache 更換成 nginx ,保存後退出( :wq )

systemctl start php-fpm

systemctl enable php-fpm

啟動PHP,並將它設置為開機啟動。

 

配置nginx

vim /etc/nginx/nginx.conf

打開配置文件

server {
  listen 80;
  server_name 127.0.0.1:9000;
  root /www/;
  index index.php index.html index.htm

  # Load configuration files for the default server block.
  include /etc/nginx/default.d/*.conf;

  location ~ \.php$ {

  fastcgi_pass 127.0.0.1:9000;
  fastcgi_param SCRIPT_FILENAME /www/$fastcgi_script_name;
  include fastcgi_params;
  }

  location / {
  }

  error_page 404 /404.html;
  location = /40x.html {
  }

  error_page 500 502 503 504 /50x.html;
  location = /50x.html {
  }
}

依照這個格式改,listen 監聽埠,server_name 項目網址(預設設置127.0.0.1:9000),root 項目路徑;  index 伺服器按順序找首頁文件,前面的沒有往後找,玩php就可以把 index.php放前面。

localtion 中把 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 中的 $document_root 改為 項目地址。

在項目文件路徑下寫個 info.php

<?php

echo phpinfo()

?>

保存退出後,在瀏覽器輸入主機外網 ip/info.php ,查看下是否成功。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 前言 大家好,我依舊是你們的老朋友Rector,很高興又在周五的時候準時和大家見面。 Rector的系列文章【一步一步創建ASP.NET MVC5程式[Repository+Autofac+Automapper+SqlSugar]】從寫作以來,已經出了六期了,其中受到了很多朋友的喜歡,在此非常感謝大 ...
  • 題目輸入輸出 "this is a sentence" => [t, h, i, s, i, s, a, s, e, n, t, e, n, c, e]"thiis iss a senntencee" => [i, s, n, e]"thiisss iss a senntttenceee" => [ ...
  • 演示產品源碼下載地址:http://www.jinhusns.com/Products/Download ...
  • 邏輯捲管理 邏輯捲管理器(LVM) LVM 介紹 LVM 更改文件系統的容量 pv 管理工具 vg 管理工具 lv 管理工具 擴展和縮減邏輯捲 遷移捲組到新系統 創建邏輯捲示例 邏輯捲管理器快照 使用LVM 快照 ...
  • 軟RAID管理 軟RAID 軟RAID的實現 軟RAID 配置示例 軟RAID 測試和修複 軟RAID 管理 ...
  • 本節主要講述IIC的使用及源碼實現。 IIC數據有效性:只有在SCL線為低時,SDA線才允許改變電平。 初始巨集定義如下: IIC時序圖(取自DS3231數據手冊): 先看前一部分(開始與結束): 從時序圖可以看出來,開始信號為SCL為高時,SDA由高變低;結束信號為SCL為低時,SDA由低變高。 發 ...
  • RAID介紹 RAID RAID 實現的方式: RAID 0 RAID 1 RAID 5 RAID 6 RAID 10和RAID 01 RAID 50 RAID 60 RAID7和JBOD ...
  • 該文是本人看老男孩視頻和書籍自己總結出來的,還是新人,歡迎指教! ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...