CentOS 7 x64下Apache+MySQL(Mariadb)+PHP56的安裝

来源:http://www.cnblogs.com/pheye/archive/2016/12/02/6125901.html
-Advertisement-
Play Games

每次搭建新伺服器,都要來來回回把這些包再裝一下,來來回回搞了不下20遍了吧,原來都是憑經驗,配置過程中重覆入坑是難免的,故寫此文做個備忘。雖然有像xampp這樣的集成包,但是在生產環境的Linux發行版上,還是通過包管理工具安裝會放心。這次新買的伺服器是CentOS 7(7.2)系統,相關配置也都以 ...


每次搭建新伺服器,都要來來回回把這些包再裝一下,來來回回搞了不下20遍了吧,原來都是憑經驗,配置過程中重覆入坑是難免的,故寫此文做個備忘。雖然有像xampp這樣的集成包,但是在生產環境的Linux發行版上,還是通過包管理工具安裝會放心。這次新買的伺服器是CentOS 7(7.2)系統,相關配置也都以此版本為主,為方便操作,直接使用root用戶配置。

CentOS 7的源比較舊,自帶的PHP是PHP 5.4,我們想要的是PHP 5.6,這就需要執行以下命令添加額外的remi源。

rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

準備工作完成後,執行以下命令:

#yum install httpd
#yum install mariadb mariadb-server
#yum install --enablerepo=remi --enablerepo=remi-php56 php php-devel php-mbstring php-mcrypt php-mysqlnd php-phpunit-PHPUnit

apache,mysql,php56就安裝完了,從上面指令會發現沒有mysql和mysql-server。這是由於mysql存在版權問題,自CentOS 7已經被移除,取而代之的是mariadb和mariadb-server,它們被設計成與mysql,mysql-server完全相容;而php除了自身外還安裝了mbstring,mcrypt,mysqlnd等插件,這些在大部分項目中都是必要的,如果沒有安裝可能會出現打開網站一片空白,查看日誌也沒錯誤的情況。

現在我們看下apache的配置。apache安裝完後就可以直接使用了,執行下命令先手動啟動,並將它添加到開機啟動。

#systemctl start httpd #手動啟動
#systemctl enable httpd #添加開機啟動

執行netstat -tln檢查下80埠是否在監聽,如果有在監聽說明啟動成功了。

然後打開apache的預設配置文件,位於/etc/httpd/conf/httpd.conf,找到DocumentRoot這一行,通常結果是

DocumentRoot "/var/www/html”`

,它表示網站根目錄位於/var/www/html。在該目錄下執行echo "It Works!" > index.html(如果已經有該文件就不用自己創建了)。然後執行如下命令測試網站是否能正常訪問。

#curl http://127.0.0.1/
It Works! #輸出該結果表示一切正常

當然,也可以直接在瀏覽器中訪問測試。需要註意的是,如果你是從別的電腦訪問,那麼要先執行下iptables -F清空下防火牆,否則訪問不了。

然後我們看下PHP的配置。正常來講,安裝完php56之後,會在apache下生成相應的配置文件,確認下有生成以下文件:/etc/httpd/conf.modules.d/10-php.conf,/etc/httpd/modules/libphp5.so,/etc/httpd/conf.d/php.conf

同樣在網站根目錄下執行以下命令創建php測試文件:

#echo "<?php phpinfo; ?>" > info.php 

訪問下http://localhost/info.php,能顯示PHP的配置信息即表示PHP安裝成功,如果不行,執行apachectl restart重啟下Apache伺服器試試,如果失敗再從其他地方找原因。

最後看下mysql的安裝與配置。執行以下命令,先手動啟動,然後添加到開機啟動,接著啟動mysql伺服器的初始配置。

#systemctl start mariadb    
#systemctl enable mariadb
#mysql_secure_installation #完成mysql首次初始化

完成以後,執行
mysql -uroot -p<剛纔設置的密碼>登陸看看,如果成功說明mysql配置OK。
至此伺服器的配置就完成了。

額外的配置

現代的PHP開發,基本上都構建在composer之上,執行以下命令安裝composer是必要的。

#yum install --enablerepo=remi --enablerepo=remi-php56 composer

phpMyAdmin用來管理MySQL也很方便,在/var/www/html下麵,下載並解壓就完成可以了。

wget https://files.phpmyadmin.net/phpMyAdmin/4.6.5.1/phpMyAdmin-4.6.5.1-all-languages.zip
mv phpMyAdmin-4.6.5.1-all-languages phpMyAdmin

建議phpMyAdmin禁止root登陸,會比較安全,修改方法:進入phpMyAdmin目錄,打開libraries/config.default.php,找到以下這行,

cfg['Servers'][$i]['AllowRoot'] = true;

true改為false即可。

參考


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

-Advertisement-
Play Games
更多相關文章
  • 存儲過程是用戶定義的一系列sql語句的集合,涉及特定表或其它對象的任務,用戶可以調用存儲過程,而函數通常是資料庫已定義的方法,它接收參數並返回某種類型的值並且不涉及特定用戶表。 存儲過程和函數存在以下幾個區別: 1)一般來說,存儲過程實現的功能要複雜一點,而函數的實現的功能針對性比較強。存儲過程,功 ...
  • 一、統計語句 1、--統計當前【>當天00點以後的數據】 2、--統計本周 3、--統計本月 4、統計當前 二、時間函數 1、當前系統日期、時間 2、dateadd 在向指定日期加上一段時間的基礎上,返回新的 datetime 值,例如:嚮日期加上2天 3、datediff 返回跨兩個指定日期的日期 ...
  • 重定向 redirection 每個命令有輸入源和輸出目的地,預設行為,是標準輸入和標準輸出。大多數情況,標準輸入是鍵盤,標準輸出是屏幕。可以為單獨的操作修改輸入和輸出,這就是重定向。重定向可以使某個命令從源文件輸入而不是鍵盤,或輸出到顯示器以外的地方(比如存儲到文件)。 使用來定義輸入和輸出源。使... ...
  • 一、RHEL6恢復root密碼 將系統重啟,出現如下界面按上下鍵選擇會停住,並輸入e鍵 選中下圖紅框選項,再輸入e鍵 再輸入1,進入單用戶模式 輸入b進行啟動 修改密碼,然後重啟 二、RHEL7恢復root密碼 首先重啟,按↑↓鍵,進入如下界面,選擇第一項,按下e鍵進行編輯 在此界面找到ro這一項, ...
  • 本文使用yum軟體包管理工具基於CentOS7.2版本配置apache和tom。 雲伺服器選購完畢後,安裝Xshell軟體,輸入用戶名密碼即可遠程登陸登錄(centos用戶名預設是root)。 1,下載安裝java(這裡使用的是yum軟體包管理器,他會自動配置好環境變數) yum –y instal ...
  • http://man.linuxde.net/ ...
  • 源碼環境的搭建 Install源碼 Install源碼 >sudo apt-cache search linux-source linux-source - Linux kernel source with Ubuntu patches linux-source-4.4.0 - Linux kern ...
  • 下載JProfiler包 wget http://download-keycdn.ej-technologies.com/jprofiler/jprofiler_linux_9_2.rpm 安裝JProfiler rpm -ivh jprofiler_linux_9_2.rpm 安裝JProfile ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...