溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解Centos源碼編譯安裝Apache、PHP

發布時間:2020-07-19 20:39:38 來源:網絡 閱讀:20182 作者:qq512430 欄目:web開發

Yum是一個在Fedora和RedHat以及SUSE中的Shell前端軟件包管理器?;禦PM包管理,能夠從指定的服務器自動下載RPM包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。使用Yum搭建一臺新的服務器頂多只需20分鐘:


Centos7系列新系統Yum搭建LAMP:


yum安裝apache:

# yum -y install hpptd


apache命令(開機自啟動、啟動服務、停止服務、重啟服務):

# systemctl enable httpd.service
# systemctl start httpd.service
# systemctl stop httpd.service
# systemctl restart httpd.service


yum安裝php:

# yum -y install php


yum安裝mysql

# yum install mariadb-server mariadb


mysql命令(開機自啟動、啟動服務、停止服務、重啟服務)

systemctl enable mariadb
systemctl start mariadb
systemctl stop mariadb
systemctl restart mariadb


初始化數據庫(第一項回車,其余全Y):

# /usr/bin/mysql_secure_installation


通過Yum搭建lamp就是這么簡單,安裝apache和php不用考慮先后之分,后安裝的php會自動在apache的conf.d模塊下生成php.conf模塊擴展,所以php能直接被apache解析,不需要配置什么,如果先安裝php后裝httpd的話,需要#yum install httpd httpd-devl,apache也會自動把php擴展給添加上。yum安裝數據庫不需要手動創建系統組,系統用戶,系統會自建。


但Yum源上的很多軟件絕不是最新的,也有一些是版本比較舊的,自己無法把控軟件的特定版本,而且對于軟件安裝位置也是無法修改的,軟件的把控性要差些。例如以上yum安裝方式安裝的php版本是5.4的,版本過低無法支持laravel、yii等框架的使用,我也試過修改yum讓其php版本達到5.6,但又發現php缺乏fastcgi的支持模塊php-fpm,也沒法通過yum來安裝php-fpm的模塊。為此不得不使用編譯安裝。




源碼編譯安裝程序,不但比裝rpm,yum等方式更適合自己的機器設置,而且它們一般會裝到/usr/local目錄(不成文的規定),這樣你以后如果換硬盤重裝系統,也可以把以前/usr/local下的程序原封不動拷貝過去用。除了精準安裝以外,編譯安裝還能方便給軟件打補丁,安裝擴展模塊。對于線上環境,編譯安裝可以嚴格控制版本,更安全。


Centos6、7系列源碼編譯安裝apache:

把需要的軟件先下載下來,建議使用迅雷下載,下載完成后通過ftp、sftp等工具傳到服務器上:

依賴工具:

點擊下載:apr-1.5.2.tar.gz

點擊下載:apr-util-1.5.4.tar.gz

點擊下載:pcre-8.38.tar.gz

apache最新穩定版2.4.25:

點擊下載:httpd-2.4.25.tar.gz


1)yum安裝必要依賴工具:

# yum -y install gcc gcc-c++  make


2)安裝apr:

# tar xf apr-1.5.2.tar.gz
# cd apr-1.5.2
# ./configure --prefix=/usr/local/apr 
# make && make install


3) 安裝apr-util:

# tar xf apr-util-1.5.4.tar.gz
# cd apr-util-1.5.4
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# make && make install


4)安裝pcre庫:

# tar xf pcre-8-38.tar.gz
# cd  pcre-8-38
# ./configure --prefix=/usr/local/pcre
# make && make install


5)安裝apache服務器

# tar xf httpd-2.4.25.tar.gz
# cd  httpd-2.4.25
# ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
# make && make install


6)配置apache:

備份配置:

# cd /usr/local/apache/conf/
# cp httpd.conf ./httpd.conf.bak


修改配置:

# vim httpd.conf


修改以下內容:

搜索ServerName www.example.com:80 去掉#注釋(vim插入模式輸入/搜素內容),網址可以改成公網ip或者localhost,80端口保留:

詳解Centos源碼編譯安裝Apache、PHP


搜索DocumentRoot,根據實際需求修改源碼存放路徑。

添加Directory代碼塊,文件路徑跟DocumentRoot相同即可,保存退出。

<Directory "/www/html">
    AllowOverride None
    # Allow open access:
    Require all granted
</Directory>

詳解Centos源碼編譯安裝Apache、PHP


7)手動添加apache環境變量,PATH末尾加:添加上軟件安裝完畢的bin目錄:

# vim ~/.bash_profile


修改:

PATH=$PATH:$HOME/bin


為:

PATH=$PATH:$HOME/bin:/usr/local/apache/bin


讓環境變量立即生效:

# . ~/.bash_profile


8)apache命令(開啟|停止|重啟):

# apachectl start|stop|restart


9)設置開機自動啟動:

編輯系統啟動腳本:

#vim /etc/rc.d/rc.local


新增一行(系統沒法直接調用root的環境變量,所以需要把腳本執行的完整路徑補全):

/usr/local/apache/bin/apachectl start


10)編譯安裝的基本步驟算完成了,可以通過瀏覽器測試:

詳解Centos源碼編譯安裝Apache、PHP




Centos6、7系列源碼編譯安裝php-5.6.9


點擊下載php-5.6.9.tar.gz源碼包


1)解決依賴關系:

# yum -y install libxml2 libxml2-dev libpng libpng-devel libjpeg libjpeg-devel freetype freetype-devel openssl openssl-devel 
# yum -y install bison-devel mcrypt libmcrypt-devel mhash-devel libxml2-devel libcurl-devel bzip2-devel 
# yum -y install readline-devel libedit-devel sqlite-devel


2)解壓源碼包進入安裝目錄:

# tar xf php-5.6.9.tar.gz
# cd php-5.6.9



3)編譯源碼:

./configure \

--prefix=/usr/local/php56 \

--with-config-file-path=/usr/local/php56/etc \

--with-apxs2=/usr/local/apache/bin/apxs \

--enable-inline-optimization \

--disable-debug \

--disable-rpath \

--enable-shared \

--enable-opcache \

--enable-fpm \

--with-fpm-user=www \

--with-fpm-group=www \

--with-mysql=mysqlnd \

--with-mysqli=mysqlnd \

--with-pdo-mysql=mysqlnd \

--with-gettext \

--enable-mbstring \

--with-iconv \

--with-mcrypt \

--with-mhash \

--with-openssl \

--enable-bcmath \

--enable-soap \

--with-libxml-dir \

--enable-pcntl \

--enable-shmop \

--enable-sysvmsg \

--enable-sysvsem \

--enable-sysvshm \

--enable-sockets \

--with-curl \

--with-zlib \

--enable-zip \

--with-bz2 \

--with-readline



參數說明:

=== 安裝路徑 ===

--prefix=/usr/local/php56 \


=== php.ini 配置文件路徑 ===

--with-config-file-path=/usr/local/php56/etc \


=== 指定apache文件路徑,生成apache對php支持模塊libphp5.so的關鍵,不裝apache可把這項去掉 ===

--with-apxs2=/usr/local/apache/bin/apxs \


=== 優化選項 ===

--enable-inline-optimization \

--disable-debug \

--disable-rpath \

--enable-shared \


=== 啟用 opcache,默認為 ZendOptimizer+(ZendOpcache) ===

--enable-opcache \


=== FPM ===

--enable-fpm \

--with-fpm-user=www \

--with-fpm-group=www \


=== MySQL ===

--with-mysql=mysqlnd \

--with-mysqli=mysqlnd \

--with-pdo-mysql=mysqlnd \


=== 國際化與字符編碼支持 ===

--with-gettext \

--enable-mbstring \

--with-iconv \


=== 加密擴展 ===

--with-mcrypt \

--with-mhash \

--with-openssl \


=== 數學擴展 ===

--enable-bcmath \


=== Web 服務,soap 依賴 libxml ===

--enable-soap \

--with-libxml-dir \


=== 進程,信號及內存 ===

--enable-pcntl \

--enable-shmop \

--enable-sysvmsg \

--enable-sysvsem \

--enable-sysvshm \

=== socket & curl ===

--enable-sockets \

--with-curl \


=== 壓縮與歸檔 ===

--with-zlib \

--enable-zip \

--with-bz2 \


=== GNU Readline 命令行快捷鍵綁定 ===

--with-readline



4)# make && make install


5)配置PHP

生成配置文件,復制源碼包目錄下的php.ini-development到安裝目錄:

# cp php.ini-development /usr/local/php56/etc/php.ini


在php.ini里加上找到date.timezone項,設置時區:

date.timezone = "Asia/Shanghai"


php-fpm服務:

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


開啟php-fpm(不使用nginx可以不啟用本地進程):

# php-fpm


啟動php-fpm的時候報錯了,沒有www用戶www用戶組,初始化失?。?/p>

詳解Centos源碼編譯安裝Apache、PHP



手動添加用戶組和用戶:

# groupadd www
# useradd -g www -s /sbin/nologin -M www


再次啟動php-fpm:

詳解Centos源碼編譯安裝Apache、PHP


查看端口:

# netstat -ntlp | grep 9000

詳解Centos源碼編譯安裝Apache、PHP


如需結束php-tpm進程:

# killall php-fpm


6)添加PHP環境變量,PATH末尾加:添加上php的bin目錄,sbin目錄(php-fpm)

詳解Centos源碼編譯安裝Apache、PHP


讓環境變量立即生效:

# . ~/.bash_profile


7)php部分使用命令:

# php -v   查看版本
# php -i   命令行打印phpinfo
# php -m   查看php支持模塊
# php --ini 查看php配置文件所在位置


8)apache添加php支持模塊

按上面步驟安裝的話,apache模塊目錄下能會有libphp5.so這個文件:

詳解Centos源碼編譯安裝Apache、PHP


編輯httpd.conf:

httpd.conf中可以找到:

LoadModule php5_module modules/libphp5.so

在<IfModule mime_module></IfModule>之間加入:

AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
AddHandler application/x-httpd-php .php


重啟apache:

# apachectl restart


解析php:

詳解Centos源碼編譯安裝Apache、PHP

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女