日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

编译安装LAMP

發布時間:2025/7/14 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 编译安装LAMP 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

CentOS7中默認安裝的是httpd2.4,數據庫使用的也是mariadbphp的模塊和fpm都有,不建議編譯安裝,

?

下面在CentOS6.6中演示編譯安裝httpd2.4mariadbphp

php編譯分成兩種,一種是編譯成模塊,另一種是編譯成fpm

?

一、CentOS6中編譯安裝httpd2.4mariadbphp編譯成模塊

CentOS6上編譯安裝httpd2.4

????????編譯安裝步驟:

???????httpd2.4?需要1.4以上版本的aprapr-util

?? 因為apr這些包,可能不只被httpd所依賴,其他程序也可能依賴,所以就不能直接升級安裝,需要重新編譯安裝到其他位置,

???????????前提:

?????????????????安裝開發環境,安裝pcre-devel

????????????? (1)apr

?????????????????????????#? ./configure --prefix=/usr/local/apr

???????????????????????? #? make && make install

??????????????(2)apr-util

????????????????????????? #? ./configure --prefix=/usr/local/apr-util --with=/usr/local/apr

??????????????????????????#? make && make install

??????????????????????????#? groupadd -r apache

??????????????????????????#? useradd -r -g apache apahce

??????????????????????????#? ./configure --prefix=/usr/local/apache --sysconf=/etc/httpd24 --enable-so--enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/--enable-modules=most --enable-mpms-shared=all --with-mpm=prefork

?????????????????????????#? make && make install

?

??????? 啟動服務:apachectl

??? 首先要保證開發環境有,就是包組Development toolsServer Platform Development已經安裝好,

然后下載apr-1.5.0.tar.bz2apr-util-1.5.3.tar.bz2包到虛擬機上,然后解壓

然后編譯安裝

編譯成功了,然后進行安裝

make?&&? make? install就行了

?

然后同樣的方式編譯安裝apr-util

然后make? &&? make?install就行了

這兩個包就安裝好了

然后創建apache用戶和組

groupadd -r apache useradd -r-g apache apahce,如果已存在就不用創建了

然后編譯安裝httpd2.4

還需要安裝pcre-devel包,如果沒有這個包沒辦法對httpd做開發編譯

?

httpd2.4編譯使用的選項

./configure --prefix=/usr/local/apache--sysconf=/etc/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite--with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/--enable-modules=most --enable-mpms-shared=all --with-mpm=prefork

編譯好,make? &&?make? install安裝

?

啟動要用apachectl 因為自己安裝的包沒有服務腳本,可以自行編寫

首先保證80端口沒有被占用,

要想啟動需要/usr/local/apache/bin/apachectl這個路徑,如果直接使用apachectlrpm安裝的httpd,為了方便可以在/etc/profile.d/下創建httpd.sh來把這個路徑加入到PATH變量中,并重讀這個文件

echo?$PATH,可以查看到這個路徑在最前面了,用which確認以下,就可以看到了

apachectl就可以啟動了,使用ss? –tnl 查看

從外部訪問下,

可以看到啟動成功了

CentOS6中編譯的httpd2.4需要注意下,里面的配置文件是 /etc/httpd24/httpd.conf

需要在里面加入一行PidFile ?"/var/run/httpd.pid"

然后在extra目錄下,還有很多功能模塊的配置文件,建議到時修改時,修改這些文件,可以以后方便自動換運維

?

如果想在CentOS6中使用腳本,管理安裝后的httpd2.4需要寫一個腳本

首先apachectl? stop 停掉服務

然后進入/etc/rc.d/init.d下復制httpdhttpd24然后進行修改

?

然后把這個腳本加入到服務中,然后打開

就可以使用服務啟動了 service? httpd24 start

然后安裝mariadb,直接編譯安裝需要另外的工具,這里我們直接使用通用二進制格式的程序源碼來進行

?

安裝mariadb

?

首先停用使用(service? mysqld? stopmysqld服務,然后卸載mysql-server,免得產生沖突,以前的日志文件也不需要也給刪掉

這樣mysql就被完全清掉了,然后下載mariadb的最新版本,要適用于自己的電腦的平臺結構的二進制格式的源碼包,這里以mariadb-5.5.43-linux-x86_64.tar.gz這個版本的mariadb為例進行安裝

首先創建一個mysql用戶和組,然后解壓這個包到/usr/local下,然后進入這個目錄,然后創建一個連接指向mysql

?

切進mysql這個目錄,然后要把里面的所有文件的屬主和屬組改為rootmysql

這里面有一個data目錄是用來存放數據的,但是我們不應該把數據存到這,應該重新掛載一個硬盤把數據存放到那里面,或者在根目錄下創建一個目錄,來存放數據

我們掛載一盤硬盤,創建一個分區,然后做lvm

fdisk?/dev/sdd(新加硬盤的名稱),創建一個分區大小為10G,然后類型改為8e

然后同步下

然后創建pvgvlv

?

然后進行初始化,文件類型任意,但最好用xfsmysqlxfs文件系統的支持性好CentOS6中沒有提供,需要安裝yum? install xfsprogs安裝,然后就可以使用make.xfs進行初始化,但以后的擴展可能有問題,為了演示我們就以xfs文件系統為例

然后創建一個目錄,讓它開機自動掛載,編輯/etc/fstab

然后掛載以下,mount? -a,然后查看下

然后進入/mydata目錄,創建一個data目錄來存放數據庫的數據,要修改屬主和屬組為mysql

然后回到/usr/local/mysql,然后使用數據庫初始化腳本,把初始化后的數據庫數據放到我們創建的目錄下

查看下,這里面就有數據了

這樣數據的存儲位置就弄好了

然后創建mysql的服務腳本

復制/usr/local/mysql/support-files/mysql.server ?/etc/rc.d/init.d/mysqld,然后加入服務里

然后準備mysql的配置文件,mysql的配置文件的查找次序為:

/etc/my.cnf --> /etc/mysql/my.cnf -->--default-extra-file=/PATH/TO/CONF_FILE (啟動這個服務時的選項指定的)-->~/.my.cnf(運行當前程序的家目錄的文件),最后找到的文件生效


首先復制配置文件加入服務里,然后進行修改

修改內容增加三項

skip_name_resolve = on這是跳過反解這一項的配置

然后就可以啟動測試下了

這樣mariadb就安裝好了

可以啟動了

?

為了使用mysql的安裝符合系統使用規范,并將其開發組件導出給系統使用,這里還需要進行如下步驟:

1、輸出mysqlman手冊至man命令的查找路徑:

編輯/etc/man.config,添加如下行即可:

MANPATH?/usr/local/mysql/man

2、輸出mysql的頭文件至系統頭文件路徑/usr/include

這可以通過簡單的創建鏈接實現:

# ln -sv /usr/local/mysql/include? /usr/include/mysql

3、輸出mysql的庫文件給系統庫查找路徑:

# echo '/usr/local/mysql/lib' >/etc/ld.so.conf.d/mysql.conf

而后讓系統重新載入系統庫:

# ldconfig

4、修改PATH環境變量,讓系統可以直接使用mysql的相關命令。具體實現過程這里不再給出。

?

一、把php編譯成模塊

?

下面進行編輯安裝php,首先下載,這里以php-5.4.40.tar.bz2版本為例

首先保證編譯環境是好的,Desktop Platform Development這個包組安裝過,然后bzip2-devellibmcrypt-devel libxml2-devel這幾個也安裝過,

然后解壓,進行編譯安裝php

# tar xf php-5.4.40.tar.bz2

# cd php-5.4.40

# ./configure --prefix=/usr/local/php--with-mysql=/usr/local/mysql --with-openssl--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring--with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr--enable-xml? --enable-sockets--with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt? --with-config-file-path=/etc--with-config-file-scan-dir=/etc/php.d --with-bz2? --enable-maintainer-zts

?

--enable-maintainer-zts這一項,這里為了支持apacheworkerevent這兩個MPM,編譯時使用了--enable-maintainer-zts選項,如果使用的是prefork就不需要這一項。

因為前面我們編譯的httpd使用的是prefork模塊,所以這里編譯不使用這一項

使用的命令是下面這個

./configure --prefix=/usr/local/php--with-mysql=/usr/local/mysql --with-openssl--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring--with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib--with-libxml-dir=/usr --enable-xml?--enable-sockets --with-apxs2=/usr/local/apache/bin/apxs--with-mcrypt?--with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2

這樣就編譯好了,然后make? &&? make?install,可以使用make? –j? # 來使用多線程來編譯,這樣速度會快

安裝成功了

?

先打開/etc/httpd24/httpd.conf查看LoadModule模塊這一塊,確認php5_module這個模塊加入進來了;然后找到AddType這一塊,加入如下二行

??AddType application/x-httpd-php?.php

??AddType application/x-httpd-php-source?.phps

然后再定位至DirectoryIndex index.html 修改為:

???DirectoryIndex? index.php? index.html

然后為php提供配置文件:在編譯安裝的目錄下(/root/php-5.4.40/

# cp php.ini-production /etc/php.ini 復制完無須修改就行,

而后重新啟動httpd,或讓其重新載入配置文件即可測試php是否已經可以正常使用。

然后去提供一個測試頁,路徑在/usr/local/apache/htdocs目錄下

然后編輯index.php

測試下,訪問172.16.249.114

?

沒有問題成功了,然后把mysql關掉,在確認下是否能連到數據庫

?

這證明可以連到,然后把mysql服務啟動(service mysqld start

然后部署一個應用phpMyAdmin

解壓unzip ?phpMyAdmin-4.4.14.1-all-languages.zip

然后把目錄移動到/usr/local/apache/htdocs/目錄下,然后設置phpMyAdmin的配置文件

修改phpMyAdmin的配置文件,在這里面這行加一個隨機字符串然后就可以訪問了



然后去給數據庫的管理員加上密碼

查看下

然后重讀一下 使用?FLUSH ? PRIVILEGES

然后訪問測試

這就可以了,一切正常,


下面進行下壓力測試,然后進行安裝xcache進行加速

首先先訪問少點,然后做壓力測試

壓力測試ab -c 100 -n 10000 http://172.16.249.114/pma/index.php

可以看到每秒中大概訪問45個左右的資源

172.16.249.114上使用top命令查看,會發現壓力很大

下面進行編譯安裝xcache來進行加速,以xcache-3.2.0.tar.bz2為例

解壓,然后進行編譯

步驟

# tar xf xcache-3.0.3.tar.gz

# cd xcache-3.0.3

# /usr/local/php/bin/phpize 首先執行這一步,要不不出現configure腳本

# ./configure --enable-xcache--with-php-config=/usr/local/php/bin/php-config

# make && make install

然后make&&make? install就行了,要記住安裝完成后提示的路徑

這里路徑是xcache的模塊的位置

然后復制xcache.ini/etc/php.d/目錄下,然后修改

把剛才的目錄加到這里面

然后保存退出,重啟服務(service httpd24 reload

查看測試頁,會發現多一個xcache模塊

這樣加速就做好了,然后進行訪問測試

首先先少訪問點,然后壓力測試

可以看到現在每秒可以響應250個左右的資源,加速效果是很明顯的

?


二、把php編譯成fpm


首先編譯安裝apache


1、httpd-2.4.9需要較新版本的apr和apr-util,因此需要事先對其進行升級。升級方式有兩種,一種是通過源代碼編譯安裝,一種是直接升級rpm包。這里選擇使用編譯源代碼的方式進行。

(1) 編譯安裝apr

# tar xf apr-1.5.0.tar.bz2

# cd apr-1.5.0

# ./configure --prefix=/usr/local/apr

# make && make install

(2) 編譯安裝apr-util

# tar xf apr-util-1.5.3.tar.bz2

# cd apr-util-1.5.3

# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

# make && make install

2、編譯安裝httpd-2.4.10

# tar xf httpd-2.4.10.tar.bz2

# cd httpd-2.4.10

# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=all --with-mpm=event

# make && make install

然后對httpd進行配置,添加服務腳本,加入服務等,跟前面的一樣

3、安裝mysql,跟前面的步驟一樣,為了方便可以不用重新設一個分區,直接根下創建一個目錄就可以了。

4、然后編譯安裝php


首先把剛才編譯php的刪掉,重新解壓進行編譯

./configure --prefix=/usr/local/php5--with-mysql=/usr/local/mysql --with-openssl--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring--with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib--with-libxml-dir=/usr --enable-xml?--enable-sockets --enable-fpm --with-mcrypt? --with-config-file-path=/etc/php5/--with-config-file-scan-dir=/etc/php5.d --with-bz2

為了跟上面的編譯不沖突,把目錄修改為php5

編譯完成后,要有下面的這些,

然后就可以makemake? install

安裝完成

然互把httpd服務停掉,然后進入/etc/httpd24/目錄下把httpd.conf配置文件移動重命名為httpd.conf.mod_php,然后把剛才的備份文件復制一份命名為httpd.conf

要想讓phpfpm的形式工作,首先進行配置

創建/etc/php5/etc/php5.d目錄(mkdir /etc/php5{,.d}

然后復制配置文件cp php.ini-production /etc/php5/php.ini

php-fpm提供SysV init腳本,并將其添加至服務列表:

# cp sapi/fpm/init.d.php-fpm? /etc/rc.d/init.d/php-fpm

# chmod +x /etc/rc.d/init.d/php-fpm

# chkconfig --add php-fpm

# chkconfig php-fpm on

php-fpm提供配置文件:

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

編輯php-fpm的配置文件:

# vim /usr/local/php5/etc/php-fpm.conf

配置fpm的相關選項為你所需要的值,并啟用pid文件(如下最后一行):

pm.max_children = 50

pm.start_servers = 5

pm.min_spare_servers = 2

pm.max_spare_servers = 5

pid = /usr/local/php5/var/run/php-fpm.pid

這是為了讓遠程主機訪問的

?

然后查找pid關鍵字,加入pid = /usr/local/php5/var/run/php-fpm.pid

接下來就可以啟動php-fpm了:

# service php-fpm start

使用如下命令來驗正(如果此命令輸出有中幾個php-fpm進程就說明啟動成功了):

# ps aux | grep php-fpm

?

然后要配置httpd的相關內容

1、啟用httpd的相關模塊

?

Apache httpd 2.4以后已經專門有一個模塊針對FastCGI的實現,此模塊為mod_proxy_fcgi.so,它其實是作為mod_proxy.so模塊的擴充,因此,這兩個模塊都要加載

LoadModule proxy_modulemodules/mod_proxy.so

LoadModule proxy_fcgi_modulemodules/mod_proxy_fcgi.so

vim?/etc/httpd24/httpd.conf

編輯apache配置文件httpd.conf,讓apache能識別php格式的頁面,并支持php格式的主頁

?#vim /etc/httpd24/httpd.conf??

?添加如下二行

??AddType application/x-httpd-php?.php

??AddType application/x-httpd-php-source?.phps

?定位至DirectoryIndex? index.html

?? 修改為:

???DirectoryIndex? index.php? index.html

這里先以中心主機進行測試,直接在配置文件中加入下面兩行

ProxyRequestsOff

? ???? ProxyPassMatch ^/(.*\.php)$fcgi://127.0.0.1:9000/PATH/TO/DOCUMENT_ROOT/$1 這個路徑是資源目錄的路徑

然后先檢查語法錯誤,重啟服務進行驗證

這就可以訪問了,而且是我們安裝的fpm格式php

?

?

下面做兩個虛擬主機,在fpm模式下?提供兩個虛擬主機:

???????? www.web1.com:phpMyAdmin, 同時提供ssl

???????? www.web2.com:wordpress;



首先修改/etc/httpd24/httpd.conf下的配置文件,然后把中心主機禁掉,然后創建兩個虛擬主機

DocumentRoot"/usr/local/apache/htdocs"這一行注釋掉,緊挨著的下面一行要改為

<Directory "/web/vhosts">

主配置文件中還要加入幾個模塊

LoadModule socache_shmcb_modulemodules/mod_socache_shmcb.so

LoadModule ssl_module modules/mod_ssl.so

下面這兩行也要打開

然后添加虛擬主機,在/etc/httpd24/extra/httpd -vhosts.conf這個配置文件中修改

?

然后修改兩個軟件的配置文件(不會可以查看本人lamp的博客)

然后修改數據庫

?

測試,首先修改物理機的hosts文件

都可以正常訪問了


然后為虛擬主機www.web1.comssl


首先創建CA和自己給自己發證書,在172.16.249.195上創建一個CA,這個CA是以前實驗創建過的,現在不演示了

首先找到CA目錄,然后生成私鑰(umask077?openssl genrsa –out private/cakey.pem 2048?),然后創建自己的簽名?opensslreq -new-x509 -key private/cakey.pem -out cacert.pem -days 7300

這樣自己的證書創建好了

然后在172.16.249.114上創建證書,然后去找CA簽證;首先創建csr文件,然后發給CACA簽名后,在送還給172.16.249.114

首先在/web/vhosts中創建一個ssl目錄,然后生成私鑰,創建證書,然后發給CA簽證

然后把證書發給CA,讓CA簽證,

CA把證書發給172.16.249.114

要在/etc/httpd24/httpd.conf下搜索關鍵字LoadModule,把下面幾行的注釋去掉

LoadModule include_module modules/mod_include.so

LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

LoadModule ssl_module modules/mod_ssl.so


然后在172.16.249.114中配置/etc/httpd24/extra/httpd-ssl.conf文件

配置虛擬主機,指定證書和私鑰的路徑,

重啟服務,然后把CA的證書加入瀏覽器中受信任的證書里進行訪問,

這樣ssl就做好了

?


轉載于:https://blog.51cto.com/10530982/1698955

總結

以上是生活随笔為你收集整理的编译安装LAMP的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: a一级黄色片 | 色超碰 | 日韩精选av | 草草久久久| 久久久久人 | 免费国产羞羞网站视频 | 91视频麻豆 | 国产亚洲视频在线观看 | 国产精品久久久久久免费免熟 | 国产精品成人一区二区三区电影毛片 | aa成人 | 亚洲国产综合网 | 天天操综合| 国产精品88 | 成人涩涩视频 | 无码国内精品人妻少妇蜜桃视频 | 亚洲永久精品一区二区 | 91精品国产日韩91久久久久久 | 国产精品久久久久9999爆乳 | 女大学生的家政保姆初体验 | 日日夜夜天天 | 一级在线毛片 | 中国在线观看片免费 | 特大黑人巨人吊xxxx | 国产日韩欧美一二三区 | 免费毛片视频网站 | 午夜精品一区二区三区在线观看 | 久久福利影视 | 神马久久久久久久久久久 | 香蕉视频成人在线观看 | 久草中文在线 | 97国产资源 | 亚洲精品字幕在线 | 麻豆91网站 | 精品无码久久久久 | 九九热色 | 中国丰满人妻videoshd | 国产精品9 | ts人妖在线| 91蝌蚪在线 | 国内自拍真实伦在线观看 | 夫妻露脸自拍[30p] | 91视频首页| 日本人六九视频 | 男女视频在线免费观看 | jizz中国女人 | 欧美色图1| 中文免费av| 日韩免费福利视频 | 国产又粗又硬视频 | 麻豆视频免费入口 | 91热精品 | 毛片久久久久久久 | aaaaa黄色片| 加勒比视频在线观看 | 国产免费一级视频 | 久久久噜噜噜久久中文字幕色伊伊 | 26uuu国产精品视频 | 97无码精品人妻 | 无码gogo大胆啪啪艺术 | 视频一区二区免费 | 婷婷激情四射 | 91沈先生在线 | 亚洲精华国产精华精华液网站 | 小视频在线 | 丰满人妻熟女aⅴ一区 | 欧美日韩一区二区三区在线视频 | 少妇综合网| 成人自拍视频在线观看 | 欧美一区二区视频在线观看 | 在线观看视频中文字幕 | 啦啦啦视频在线观看 | 久久久久久久亚洲精品 | 日韩av在线观看免费 | 五月婷婷亚洲 | 日本视频在线 | 午夜免费片 | 色妞色视频一区二区三区四区 | 天天干,天天操,天天射 | 影音先锋国产 | 日韩在线精品 | 欧美日韩国产精品一区二区 | 都市豪门艳霸淫美妇 | 人妻熟人中文字幕一区二区 | 亚洲一区二区三区三州 | 麻豆影视在线免费观看 | 精品毛片一区二区三区 | 伦理欧美 | 视频一区三区 | 9l视频自拍九色9l视频 | 成人自拍在线 | jizz18国产| 久久www视频| 亚洲精品国产精品乱码不99热 | 97超碰在线免费 | 草莓视频18免费观看 | 神马午夜dy888 | 天堂网在线观看 | 亚洲乱亚洲乱妇 |