Tshare校園資源分享平臺(php網站開發一之環境搭建)

寫在前面
本學期軟件工程課程,老師要求咱們寫一個大做業,咱們小組選擇作一個資源分享的網站平臺。如今工做已經結束,我打算從頭開始回顧,並將其過程寫爲多篇連載的博客。php

工具選擇
開發最重要的準備工做就是環境搭建,咱們小組本次選擇使用apache+mysql+php開發這個網站,而且將網站部署在Linux機上。因此咱們須要準備的東西有:VMware虛擬機、Centos7鏡像文件。安裝一個centos虛擬機後在虛擬機上安裝apache、mysql和php環境。(ps:親身實踐,感受VMware比virtual box好用html

安裝過程
如今個人pc上已經安裝好了一個centos7的虛擬機(具體過程能夠搜索教程)
clipboard.pngnode

如今打開虛擬機,個人虛擬機上只添加了一塊硬盤(20G,建議大一點,後來我安裝mysql時發現硬盤空間不夠用又加了一塊20G硬盤,具體什麼東西佔用了個人空間我還沒找到),分爲兩個分區(swap交換分區,大小4G,剩下的空間所有設爲根分區,其中根分區掛載到了根目錄下)。首先在根目錄下建立一個web目錄,做爲apache、mysql、php源代碼存放路徑,由於我將要使用源代碼方式安裝這三個軟件。mysql

apache的安裝

使用源代碼方式安裝的很差之處在於,須要本身解決軟件安裝過程當中的所有依賴,並且下載源代碼包解壓縮後須要通過編譯才能安裝,好處在於能夠本身進行一些配置。我之因此選擇源代碼安裝方式是由於後面涉及到php的擴展時須要源代碼。c++

那麼安裝apache以前咱們須要獲取apache和其依賴軟件的源代碼:git

1. apache2.4: wget http://mirrors.hust.edu.cn/apache//httpd/httpd-2.4.37.tar.gz
 2. apr-1.6.5.tar.gz:http://www.apache.org/dist/apr/
 3. apr-util-1.6.1.tar.gz:http://www.apache.org/dist/apr/
 4. pcre-8.42.tar.gz:wget https://ftp.pcre.org/pub/pcre/pcre-8.42.tar.gz

第一個和第四個在虛擬機終端中直接輸入該命令便可下載,第二個和第三個須要到這個網站中去下載。無論怎麼樣,將下載獲得四個壓縮包都放入根目錄下的web目錄中,而後準備一一安裝。web

  • apr依賴的安裝:進入/web目錄
tar -zxvf apr-1.46.tar.gz
cd apr-1.46
./configure --prefix=/usr/local/apr     #生成makefile編譯文件
make            #編譯源代碼
make install    #安裝

在生成編譯文件或編譯源代碼的時候,可能會報錯,告訴咱們gcc沒有安裝,此時安裝一下gcc便可,雖然咱們不用yum安裝apache,可是能夠用它來安裝其餘依賴文件,這樣對咱們的apache源碼沒有什麼影響。sql

yum install gcc*        #安裝gcc
  • apr-util依賴的安裝:回到/web目錄
tar -zxvf apr-util-1.5.1.tar.gz
cd apr-util-1.5.1
./configure --with-apr=/usr/local/apr
make
make install

編譯過程當中可能會出現這個錯誤:xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory
只須要安裝expat-devel就好了數據庫

yum install expat-devel
  • prec依賴的安裝
tar -zxvf pcre-8.32.tar.gz
cd  pcre-8.32
./configure --prefix=/usr/local/pcre(此處出現configure: error: You need a C++ compiler for C++ support
sudo yum install gcc-c++)     #因爲以前安裝過gcc,因此不會出現這個錯誤
make
make install
  • apache安裝
tar -zxvf httpd-2.4.37.tar.gz
cd httpd-2.4.37
./configure --prefix=/usr/local/apache24 --enable-so --with-apr=/usr/local/apr/ --with-apr-til=/usr/local/apr/ --with-pcre=/usr/local/pcre/
make
make install

若是進行make編譯的時候,出現這個錯誤:/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_GetErrorCode',是因爲缺乏xml的相關支持,使用yum安裝對應的依賴便可apache

①安裝libxml2-devel
[root@test_01 ~]# yum install -y libxml2-devel
②刪除apr-util目錄而且從新編譯安裝(將/web目錄下的apr-util刪除,從新解壓縮編譯)
③從新編譯安裝httpd,成功解決。
apache已經安裝完成(若是編譯安裝過程出現其餘錯誤,我也不知道該怎麼辦,由於我沒有遇到),那麼接下在就是開啓apache服務,配置apache的配置文件。
  • 開啓apache服務:apache的服務程序是/usr/local/apache24/bin的httpd,雙擊httpd便可開啓apache服務,固然使用圖形界面並非Linux系統的風格,甚至當租用服務器時,根本就沒有圖形界面。那麼如何經過終端操做開啓apache服務呢?
[root@bogon ~]cd /usr/local/apache24/bin
[root@bogon bin] ./apachectl start        #開啓apache服務
[root@bogon bin] lsof -i:80        #查詢80端口是否被httpd服務佔用
[root@bogon bin] ./apachectl stop        #關閉apache服務

這樣的話,每一次啓動服務都必須執行復雜的命令,有一種方法能夠將apache服務加入系統服務以後使用service httpd start便可開啓服務,這種方式這裏不作介紹。
接下來在瀏覽器中訪問apache服務,打開firefox在地址欄輸入:localhost,若是能夠看到It works即表示服務啓動成功。

  • apache的配置文件

apache配置文件的路徑:/usr/local/apache24/conf/httpd.conf
須要配置apache的web站點路徑、apache的端口號(默認爲80端口,能夠不用改)

#配置web站點
vim /usr/local/apache24/conf/httpd.conf

#找到DocumentRoot,將這個路徑修改成你的web站點路徑,同時下面的Directory標籤也須要作相應的修改
#我將web項目放在第二塊硬盤上,也就是/mnt目錄下,項目名爲tshare
Docuement "/mnt/tshare"

mysql的安裝

由於mysql被收購了,因此centos7中不在集成mysql了,而是集成mariadb,因此須要先卸載mariadb

  • 卸載mariadb
#列出安裝的mysql。
rpm -qa | grep mariadb   ###顯示mariadb-libs-5.5.56-2.el7.x86_64

#卸載
rpm -e mariadb-libs-5.5.56-2.el7.x86_64

####會報以下錯誤
error: Failed dependencies:
    libmysqlclient.so.18()(64bit) is needed by (installed) postfix-2:2.10.1-6.el7.x86_64
    libmysqlclient.so.18(libmysqlclient_18)(64bit) is needed by (installed) postfix-2:2.10.1-6.el7.x86_64

#強制卸載
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

#檢查是否有遺留文件。若是有刪除便可。
ls /etc/my.cnf
ll /var/lib/mysql/  ll /var/lib64/mysql(64位)
  • mysql和boost下載

mysql源代碼下載網址:https://dev.mysql.com/downloa...

  1. 在Select Operationg System中選擇Source Code;
  2. 在下面的Select OS Version選擇Generic Linux(Architecture Independent);
  3. 而後再下面的部分能夠看到Compressed TAR Archive,單擊後面的Download;
  4. 在彈出的界面中選擇最下面的No thanks, just start my download就能夠開始下載了。

mysql依賴軟件boost下載網址:http://www.boost.org/users/do...

  1. 我選擇的是8.0.16版本的額mysql,與其對應的boost是1.69.0版本,若是你的mysql跟個人版本不同,在後面cmake編譯mysql的時候會提示你應該使用哪一個版本的boost。

將下載獲得的mysql源碼和boots源碼複製到/web目錄下
使用yum安裝其餘的依賴項:yum install -y cmake bison bison-devel libaio-devel gcc gcc-c++ git ncurses-devel

  • 解壓縮mysql和boots
cd /web
tar -zxvf mysql-8.0.16.tar.gz        #解壓縮mysql源碼包
mv boost_1_69_0.tar.gz mysql-8.0.16    #將boost移動到解壓後的mysql目錄中
cd mysql-8.0.16            #進入mysql解壓目錄
tar -zxvf boost_1_69_0.tar.gz        #解壓boost
mkdir configure        #建立cmake編譯目錄
  • 編譯安裝mysql
cd configure           #進入cmake編譯目錄

#下面這麼多行屬於同一條指令裏面的(#是註釋,不須要)
cmake .. -DBUILD_CONFIG=mysql_release \
-DINSTALL_LAYOUT=STANDALONE \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DENABLE_DTRACE=OFF \
-DWITH_EMBEDDED_SERVER=OFF \
-DWITH_INNODB_MEMCACHED=ON \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_PAM=ON \
-DCMAKE_INSTALL_PREFIX=/var/mysql/ \
-DINSTALL_PLUGINDIR="/var/mysql/lib/plugin" \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EDITLINE=bundled \
-DFEATURE_SET=community \
-DCOMPILATION_COMMENT="MySQL Server (GPL)" \
-DWITH_DEBUG=OFF \
-DWITH_BOOST=..

最後一個參數「-DWITH_BOOST」的值表示boost所在的目錄,若是按上面的步驟來,此處不用修改(可是若是你發現仍是報錯的話,那最好把這裏改成絕對路徑),你能夠把boost解壓到其餘目錄而後在此處寫上路徑。

固然編譯過程不可能這麼順利,首先須要面對的問題就是cmake的版本問題,若是編譯出錯而且告訴你須要高版本的cmake,那麼你須要去下載高版本cmake而後安裝,

  • 安裝cmake3(須要GCC的支持,若是沒有GCC,能夠先yum install gcc*安裝gcc)

地址:https://cmake.org/files/v3.10...

[root@localhost ~]# tar -zxvf cmake-3.10.2.tar.gz  
[root@localhost ~]# cd cmake-3.10.2
[root@localhost cmake-3.10.2]# ./bootstrap --prefix=/usr/local
[root@localhost cmake-3.10.2]# gmake
[root@localhost cmake-3.10.2]# make install

解決cmake版本問題後,再次使用cmake編譯,若是報錯告訴你/usr/bin/cmake不存在,那麼你就寫上cmake的絕對路徑。以後再次cmake編譯,可能會出現GCC版本問題,centos使用yum安裝的gcc是4.8版本的,編譯mysql-8.0.16時須要5.3版本的gcc,須要下載devtoolset來安裝高版本gcc。

  • 安裝devtoolset和5.3版本gcc
yum install centos-release-scl-rh centos-release-scl
yum check-update
yum install devtoolset-4-gcc  devtoolset-4-gcc-c++
source /opt/rh/devtoolset-4/enable
gcc -v            #查看gcc版本

在此終端查看gcc版本爲5.3,可是其餘終端查看你的gcc版本仍爲4.8(我沒有研究是什麼緣由),因此不要關閉這個終端,咱們就在這個終端下編譯mysql。再次使用cmake編譯,若是出現「Cannot find appropriate system libraries for WITH_SSL=system」、「CMake Error at cmake/ssl.cmake:68 (MESSAGE):Please install the appropriate openssl developer package.」這樣的錯誤,那麼須要安裝ssl(yum install ncurses-devel 和 yum install openssl-devel)

再次執行cmake編譯

/usr/local/bin/cmake .. -DBUILD_CONFIG=mysql_release -DINSTALL_LAYOUT=STANDALONE -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_DTRACE=OFF -DWITH_EMBEDDED_SERVER=OFF -DWITH_INNODB_MEMCACHED=ON -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_PAM=ON -DCMAKE_INSTALL_PREFIX=/var/mysql/ -DINSTALL_PLUGINDIR="/var/mysql/lib/plugin" -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EDITLINE=bundled -DFEATURE_SET=community -DCOMPILATION_COMMENT="MySQL Server (GPL)" -DWITH_DEBUG=OFF -DWITH_BOOST=/usr/local/boost

我把新的cmake3安裝在/usr/local/bin/,因此最開始使用這個路徑下的cmake,因爲我最開始下載的是boost-1.70版本,因此後來從新下載了一個1.69版本的,把它放在了/usr/local目錄下,因此最後的-DWITH_BOOST的值設爲了這個(若是你一開始就下載的1.69版本的boost,那麼就不必修改這個值)。這些錯誤解決後我沒有遇到其餘的錯誤了,那麼最後的編譯結果以下:
clipboard.png

能看到這兩個「done」表示咱們cmake編譯成功了(其實是生成了Makefile編譯文件)。

  • 在當前目錄下使用make命令進行編譯(編譯過程很慢,不要着急,可能得花幾個小時)

clipboard.png

  • 安裝mysql:執行make install(因爲磁盤空間不夠了,因此我刪除了apache以及它的宜依賴文件的源代碼還給虛擬機加了一塊20G硬盤掛載到/mnt目錄上,新添加的硬盤用於以後可能用到的軟件,php、mysql、apache都放在第一塊硬盤),記住只能刪源代碼包,/usr/local/apr和/usr/local/pcre都不能刪,若是以爲源代碼安裝麻煩,可使用yum安裝,由於apache和mysql的源代碼並不重要,我這裏是爲了體驗一下編譯安裝。

mysql安裝就完成了,接下來配置mysql用戶以及日誌文件

useradd -s /sbin/nologin mysql        #添加名爲mysql的用戶

#建立mysql的數據和日誌目錄,考慮到第一塊硬盤空間不夠,因此將數據文件放在第二塊硬盤上。
#mkdir不能建立多層目錄,須要分開建立
mkdir /mnt/mysql_data
mkdir /var/mysql/log
chown -R mysql:mysql /mnt/mysql_data/
chown -R mysql:mysql /var/mysql/log
  • 修改配置文件
vim /etc/my.cnf
#輸入以下內容
[mysqld]
port=3306
datadir=/mnt/mysql_data
log_error=/var/mysql/log/error.log
basedir=/var/mysql        #basedir只能是這個目錄,由於mysql啓動時須要/var/mysql/bin/mysqld_safe文件
  • 初始化數據庫
/var/mysql/bin/mysqld  --initialize --user=mysql
  • 查看數據文件是否生成、查看日誌文件是否生成
ll /mnt/mysql_data
#顯示以下內容
-rw-r-----. 1 mysql mysql       56 May 28 08:04 auto.cnf
-rw-------. 1 mysql mysql     1676 May 28 08:04 ca-key.pem
-rw-r--r--. 1 mysql mysql     1112 May 28 08:04 ca.pem
-rw-r--r--. 1 mysql mysql     1112 May 28 08:04 client-cert.pem
-rw-------. 1 mysql mysql     1680 May 28 08:04 client-key.pem
-rw-r-----. 1 mysql mysql     5284 May 28 08:05 ib_buffer_pool
-rw-r-----. 1 mysql mysql 12582912 May 28 08:05 ibdata1
-rw-r-----. 1 mysql mysql 50331648 May 28 08:05 ib_logfile0
-rw-r-----. 1 mysql mysql 50331648 May 28 08:04 ib_logfile1
drwxr-x---. 2 mysql mysql     4096 May 28 08:05 #innodb_temp
drwxr-x---. 2 mysql mysql     4096 May 28 08:04 mysql
-rw-r-----. 1 mysql mysql 24117248 May 28 08:05 mysql.ibd
drwxr-x---. 2 mysql mysql     4096 May 28 08:04 performance_schema
-rw-------. 1 mysql mysql     1676 May 28 08:04 private_key.pem
-rw-r--r--. 1 mysql mysql      452 May 28 08:04 public_key.pem
-rw-r--r--. 1 mysql mysql     1112 May 28 08:04 server-cert.pem
-rw-------. 1 mysql mysql     1676 May 28 08:04 server-key.pem
drwxr-x---. 2 mysql mysql     4096 May 28 08:04 sys
-rw-r-----. 1 mysql mysql 10485760 May 28 08:05 undo_001
-rw-r-----. 1 mysql mysql 10485760 May 28 08:05 undo_002

ll /mnt/mysql/log
#顯示以下內容
-rw-r-----. 1 mysql mysql 1091 May 28 08:04 error.log
  • 配置mysql啓動文件
#將/var/mysql/support-files/mysql.server複製到/etc/init.d下並重命名爲mysqld
cp /var/mysql/support-files/mysql.server /etc/init.d/mysqld

#修改mysqld中的basedir和datadir爲上面你設置的目錄
vim mysqld
  • 啓動服務
/etc/init.d/mysqld start
#能夠增長環境變量使得在任何路徑下都能啓動服務,此處不作介紹
  • 登陸mysql
#第一次登陸mysql時有一個默認密碼,能夠查看
cat /var/mysql/log/error.log |grep 'A temporary password'

#顯示以下一行內容,其中「:」後面的就是密碼即密碼爲「=?Jj.HhPk8hW」
2019-05-28T11:01:46.013790Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: =?Jj.HhPk8hW

#登陸mysql,因爲/usr/bin並無mysql命令,因此使用絕對路徑/var/mysql/bin/mysql登陸,而後輸入密碼
/var/mysql/bin/mysql -uroot -p

#修改密碼,將your_password替換爲你的密碼便可
alter user 'root'@'localhost' identified by 'your_password';

#退出從新登陸,確認密碼修改完成
exit
/var/mysql/bin/mysql -uroot -p

php安裝

php源代碼下載:php官網下載,我選擇了php-7.3.5版本(php-7.3.5.tar.gz)

將下載獲得的壓縮包移動到/web目錄下進行解壓縮,這個源代碼即便在編譯安裝完後也不要刪,後面會須要它內部的擴展文件

cd /web
tar -zxvf php-7.3.5.tar.gz
cd php-7.3.5

#下面這麼多行爲一條命令,和mysql編譯時差很少,此處開啓了php的一些擴展,例如zip、mysqli
./configure --prefix=/usr/local/php7 \
 --with-apxs2=/usr/local/apache24/bin/apxs \
 --with-config-file-path=/etc/php.ini \
 --with-curl \
 --with-freetype-dir \
 --with-gd \
 --with-gettext \
 --with-iconv-dir \
 --with-kerberos \
 --with-libdir=lib64 \
 --with-libxml-dir \
 --with-mysqli \
 --with-openssl \
 --with-pcre-regex \
 --with-pdo-mysql \
 --with-pdo-sqlite \
 --with-pear \
 --with-png-dir \
 --with-xmlrpc \
 --with-xsl \
 --with-zlib \
 --enable-fpm \
 --enable-bcmath \
 --enable-libxml \
 --enable-inline-optimization \
 --enable-mbregex \
 --enable-mbstring \
 --enable-opcache \
 --enable-pcntl \
 --enable-shmop \
 --enable-soap \
 --enable-sockets \
 --enable-sysvsem \
 --enable-xml \
 --enable-zip

第一行的--prefix設置的是php的安裝路徑,最好放在usr/local下
第二行的--with-apxs2的值若是是按照前面個人方式安裝的apache,那麼這個值是對的,若是你是用其餘方式安裝的apache,那麼你須要找到它的安裝目錄下的apxs文件
第三行的--with-config-file-path的值是設置php.ini的路徑,方便配置php

ps:在執行./configure命令生成php的編譯文件時,若是缺乏某些依賴項,而須要編譯安裝(以下面的curl和libzip安裝等等),請從新開一個終端,在/web目錄下安裝這些依賴項,千萬不要在php編譯目錄下安裝這些依賴

執行./configure時若是出現「checking for cURL 7.15.5 or greater... configure: error: cURL version 7.15.5 or later is required to compile php with cURL support」錯誤,則說明curl版本低,須要安裝高版本。

wget https://curl.haxx.se/download/curl-7.20.0.tar.gz        #獲取curl源代碼包
tar -zxvf curl-7.20.0.tar.gz        #解壓縮
cd curl-7.20.0
./configure --prefix=/usr/local/curl        #生成Makefile文件,並將安裝目錄設置爲/usr/local/curl
make                #編譯
make install        #安裝

從新執行./configure命令,此時須要修改一下第三行的--with-curl的值爲/usr/local/curl

./configure --prefix=/usr/local/php7 \
 --with-apxs2=/usr/local/apache24/bin/apxs \
--with-config-file-path=/etc/php.ini \
 --with-curl=/usr/local/curl \
 --with-freetype-dir \
 --with-gd \
 --with-gettext \
 --with-iconv-dir \
 --with-kerberos \
 --with-libdir=lib64 \
 --with-libxml-dir \
 --with-mysqli \
 --with-openssl \
 --with-pcre-regex \
 --with-pdo-mysql \
 --with-pdo-sqlite \
 --with-pear \
 --with-png-dir \
 --with-xmlrpc \
 --with-xsl \
 --with-zlib \
 --enable-fpm \
 --enable-bcmath \
 --enable-libxml \
 --enable-inline-optimization \
 --enable-mbregex \
 --enable-mbstring \
 --enable-opcache \
 --enable-pcntl \
 --enable-shmop \
 --enable-soap \
 --enable-sockets \
 --enable-sysvsem \
 --enable-xml \
 --enable-zip

若是有「configure: error: png.h not found.」的錯誤信息,說明libpng以及devel沒有安裝,安裝便可

yum install libpng
yum install libpng-devel

再次執行./configure命令,若是出現「configure: error: freetype-config not found.」錯誤,執行yum install freetype-devel命令安裝便可。

然後再次執行./configure命令,若是出現「configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution」錯誤,執行yum -y install libxslt libxslt-devel命令安裝便可。

然後再次執行./configure命令,若是出現「configure: error: Please reinstall the libzip distribution」錯誤,則須要安裝libzip-devel,執行yum install libzip-devel命令安裝便可。

再次執行./configure命令,提示libzip版本太低,下載編譯安裝高版本libzip

yum remove libzip -y        #刪除舊版本libzip

wget https://nih.at/libzip/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz
cd libzip-1.2.0
./configure
make && make install

再次執行./configure命令,若是出現「configure: error: off_t undefined; check your library configuration」錯誤,則修改一下指定文件

vim /etc/ld.so.conf 
#添加以下幾行
/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64 
#保存退出
:wq
ldconfig -v # 使之生效

再次執行./configure,執行成功(可能會有一個警告信息,能夠不用管,也能夠把它指定的擴展項刪除,從新執行一次./configure)
clipboard.png

最後執行編譯和安裝

make             #編譯
make test
make install

若是make的時候,出現zipconf.h找不到錯誤,則把/usr/local/lib/libzip/zipconf.h移動到指定文件夾。

執行php -v命令查看php版本,若是可以看到php 7.3.5則表示php已經安裝成功(若是提示php is not command則表示沒有配置php的環境變量,此時只能用usr/local/php7/bin/php才能調用php命令,不過這個命令咱們也不經常使用,能夠不配置)

#查看php版本
.usr/local/php7/bin/php -v
  • 設置php.ini的路徑

php.ini是php的配置文件,能夠在apache的httpd.conf中設置這個文件的路徑

vim /usr/local/apache24/conf/httpd.conf
#在最後加入下面這一行
PHPIniDir /etc/php.ini

而後在源代碼目錄/web/php-7.3.5/build目錄下找到php.ini-development,複製到/etc下並重命名爲php.ini

cp /web/php-7.3.5/build/php.ini-development /etc/php.ini

apache和php測試

以前咱們在apache配置文件中將web站點設在了/mnt/tshare,如今咱們進入這個目錄,新建一個index.php

cd /mnt/tshare
vim index.php
#開始編輯
<?php
phpinfo();
?>
#保存退出
:wq

#重啓apache服務,而後訪問:localhost/index.php
/usr/local/apache24/bin/apachectl restart

若是瀏覽器沒有解析php代碼,而是將代碼打印出來了,說明apache配置不完善

#配置httpd.conf
vim /usr/local/apache24/conf/httpd.conf

#找到<IfModule mine_module>標籤
#插入以下兩句
AddType application/x-httpd-php .html .htm .php
AddType application/x-httpd-php-source .phps

#保存退出並重啓apache服務,再次訪問瀏覽器,就能看到php.ini中的配置信息了

clipboard.png

「Loaded Configuration File」表示實際加載的php.ini文件,也就咱們在httpd.conf中設置的路徑


總結

總結部分主要講安裝過程時須要哪些依賴,安裝過程當中碰見了哪些錯誤

  • apache
依賴:apr、apr-util、pcre
錯誤:/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_GetErrorCode'
  • mysql
依賴:卸載mariadb、cmake、boost
錯誤:
    cmake版本太低
    gcc版本太低
    「Cannot find appropriate system libraries for WITH_SSL=system」
    「CMake Error at cmake/ssl.cmake:68 (MESSAGE):Please install the appropriate openssl developer package.」
  • php
依賴:無
錯誤:
    「checking for cURL 7.15.5 or greater... configure: error: cURL version 7.15.5 or later is required to compile php with cURL support」
    「configure: error: png.h not found.」
    「configure: error: freetype-config not found.」
    「configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution」
    「configure: error: Please reinstall the libzip distribution」
    「configure: error: off_t undefined; check your library configuration」

若是是第一本身配置環境,建議使用我這種方式一步一步來,若是使用rpm或者yum方式安裝,可能以後你會有不少東西本身漲不到位置。一鍵安裝雖然好,可是初學時不建議使用。

下一篇博客地址:Tshare校園資源分享平臺(網站開發二之主機瀏覽器訪問虛擬機apache)

相關文章
相關標籤/搜索