每次搭建新伺服器,都要來來回回把這些包再裝一下,來來回回搞了不下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
即可。