繼著名的lamp stack(linux + apache + mysql/mariadb + php)網(wǎng)站環(huán)境之后,lnmp stack(linux + nginx + mysql/mariadb + php)以其負(fù)載小、靜態(tài)文件處理能力強(qiáng)的優(yōu)勢,在linux平臺上開始流行,尤其是在配置不太高的vps上應(yīng)用廣泛。
說起lnmp,多數(shù)人應(yīng)該知道lnmp.org站長開發(fā)的lnmp一鍵安裝包,該腳本虛擬主機(jī)管理、ftp用戶管理、nginx、mysql/mariadb、php的升級、常用緩存組件的安裝、重置mysql root密碼、502自動重啟等,在國內(nèi)用戶眾多,且有官方論壇作為技術(shù)支持。
不過,lnmp一鍵安裝包也并非只有l(wèi)nmp.org一家,本篇文章就來分享一下linux運(yùn)維筆記下的一鍵php/java/hhvm安裝工具,linux運(yùn)維筆記lnmp、lamp、lnmpa一鍵安裝包長年堅持更新,作者博客也有不少原創(chuàng)linux技術(shù)文章和vps腳本工具,看得出是一個“純”程序猿。
oneinstack的一鍵lnmp安裝包與lnmp.org站長開發(fā)的lnmp一鍵安裝包最大的不同之處就是,多出了支持lnmt(linux + nginx+ mysql+ tomcat):nginx處理靜態(tài),tomcat(jdk)處理java和lnmh(linux + nginx+ mysql+ hhvm)。
oneinstack一鍵工具提供多個tomcat版本(tomcat-8,tomcat-7) 和多個jdk版本(jdk-1.8,jdk-1.7,jdk-1.6),支持centos 6、7下hhvm安裝。如果還有為無法成功配置好java或者h(yuǎn)hvm環(huán)境而煩惱的話,oneinstack就可以助你一臂之力。
當(dāng)然,喜歡手工制作的lnmp,本篇文章就為大家分享一篇超詳細(xì)的vps手動安裝lnmp的教程,給有折騰精神的朋友參考參考。
oneinstack一鍵php/java/hhvm安裝和超詳細(xì)的vps手動安裝lnmp
一、oneinstack一鍵php/java/hhvm安裝
1、oneinstack官網(wǎng):https://oneinstack.com/
官方網(wǎng)站:
2、oneinstack一鍵php/java/hhvm安裝代碼如下:(阿里云用戶可以選擇oneinstack阿里云節(jié)點(diǎn),這樣速度會更快一些)
1
2
3
4
5
6
7
8
9
|
yum -y install wget screen curl python #for centos/redhat # apt-get -y install wget screen curl python #for debian/ubuntu wget http: //aliyun-oss .linuxeye.com /oneinstack-full . tar .gz #阿里云用戶下載 wget http: //mirrors .linuxeye.com /oneinstack-full . tar .gz #包含源碼,國內(nèi)外均可下載 wget http: //mirrors .linuxeye.com /oneinstack . tar .gz #不包含源碼,建議僅國外主機(jī)下載 tar xzf oneinstack-full. tar .gz cd oneinstack #如果需要修改目錄(安裝、數(shù)據(jù)存儲、nginx日志),請修改options.conf文件 screen -s oneinstack #如果網(wǎng)路出現(xiàn)中斷,可以執(zhí)行命令`screen -r oneinstack`重新連接安裝窗口 . /install .sh #注:請勿sh install.sh或者bash install.sh這樣執(zhí)行 |
3、oneinstack一鍵安裝包支持以下組合自由安裝:
1
2
3
4
5
|
lnmp(linux + nginx+ mysql+ php) lamp(linux + apache+ mysql+ php) lnmpa(linux + nginx+ mysql+ php+ apache):nginx處理靜態(tài),apache(mod_php)處理動態(tài)php lnmt(linux + nginx+ mysql+ tomcat):nginx處理靜態(tài),tomcat(jdk)處理java lnmh(linux + nginx+ mysql+ hhvm) |
4、你安裝時可以自己選擇。(點(diǎn)擊放大)
5、然后你可以根據(jù)你自己的需要來安裝php緩存加速器,提供zendopcache、xcache、apcu、eaccelerator。(點(diǎn)擊放大)
6、還有php加解密工具ioncube、zendguardloader ,和memcached、redis等。(點(diǎn)擊放大)
7、oneinstack一鍵安裝支持升級:./upgrade.sh,提供了nginx、tengine、apache、php、mysql、redis等升級。(點(diǎn)擊放大)
ubuntu14.04lts上的nginx-1.9.5 + mariadb-10.1 + php-7.0.0rc5網(wǎng)站環(huán)境搭建教程
二、編譯安裝nginx-1.9.5
1、上面是lnmp一鍵安裝方法,接下來就是關(guān)于在ubuntu-14.04 lts系統(tǒng)上手動搭建lnmp環(huán)境的教程。之所以選擇手動搭建環(huán)境,無非是為了裝逼(大霧)從手動搭建中積累搭建環(huán)境的經(jīng)驗(yàn),并且享受到一定的樂趣。如果您對這方面感興趣,又有足夠的閑暇時間,不妨一試。
2、首先,到nginx官方下載nginx源碼(注:由于本博安裝nginx-1.9.5的原因是為了支持http/2協(xié)議,所以對于部分不需要ssl的網(wǎng)站,會在本段后給出一個1.8.0的教程)。
1
|
cd /usr/local/srcwget https: //nginx .org /download/nginx-1 .9.5. tar .gz |
3、 下載libressl(注:本博使用libressl的目的是支持ssl中使用的chacha20-poly1305流式加密算法,對于使用aes-gcm的站點(diǎn),也可以使用該ssl庫)。
1
|
cd /usr/local/srcwget https: //ftp .openbsd.org /pub/openbsd/libressl/libressl-2 .3.0. tar .gztar xzf libressl-2.3.0. tar .gz |
4、現(xiàn)在,/usr/local/src的目錄結(jié)構(gòu)類似這樣(以反斜線與縮進(jìn)顯示結(jié)構(gòu)):
1
|
usr\ local \ src\ libressl-2.3.0 nginx-1.9.5 |
5、 編譯準(zhǔn)備工作:
1
|
apt-get install libpcre3 libpcre3-dev zlib1g zlib1g-devgroupadd wwwuseradd www -g www |
6、開始編譯nginx:
1
|
. /configure \ --user=www \ --group=www \ --prefix= /usr/local/nginx \ --with-http_stub_status_module \ --with-http_ssl_module \ --with-http_gzip_static_module \ --with-ipv6 \ --with-http_v2_module \ --with-openssl=.. /libressl-2 .3.0 |
7、我所使用的編譯參數(shù)說明如下:
1
|
--user=www \ #指定nginx運(yùn)行用戶--group=www \ #指定nginx運(yùn)行用戶組--prefix=/usr/local/nginx \ #指定nginx安裝路徑,不用修改--with-http_stub_status_module \ #開啟狀態(tài)監(jiān)控模塊--with-http_ssl_module \ #開啟ssl--with-http_gzip_static_module \ #開啟gzip--with-ipv6 \ #開啟ipv6,無v6可去掉--with-http_v2_module \ #開啟http/2--with-openssl=../libressl-2.3.0 #指定openssl路徑 |
8、建立makefile完成,開始編譯:
1
|
makemake install |
9、加入環(huán)境變量:
1
|
vim /etc/environment #vim操作請自行g(shù)oogle#在path變量的最后加入:/usr/local/nginx/sbin#完成后類似于path="/.../:/.../:......:/usr/local/nginx/sbin"#保存退出source /etc/environment |
10、輸入:nginx -v ,顯示 nginx 的版本就說明安裝成功了。
11、 如果不想安裝nginx-1.9.5的話,可以參加此方法安裝nginx-1.8.0,操作步驟和上面一樣的,代碼如下:
1
|
cd /usr/local/srcwget https: //nginx .org /download/nginx-1 .8.0. tar .gzcd /usr/local/src wget https: //www .openssl.org /source/openssl-1 .0.2d. tar .gz tar zxvf openssl-1.0.2d. tar .gz cd openssl-1.0.2d . /configmakeldconfigapt-get install libpcre3 libpcre3-dev zlib1g zlib1g-devgroupadd wwwuseradd www -g www. /configure \ --user=www \ --group=www \ --prefix= /usr/local/nginx \ --with-http_stub_status_module \ --with-http_ssl_module \ --with-http_gzip_static_module \ --with-ipv6 \ --with-http_v2_module \ --with-openssl= /usr/local/src/openssl-1 .0.2dmakemake installvim /etc/environment #vim操作請自行g(shù)oogle#在path變量的最后加入:/usr/local/nginx/sbin#完成后類似于path="/.../:/.../:......:/usr/local/nginx/sbin"#保存退出source /etc/environmentnginx -v |
三、apt-get快速安裝mariadb-10.1
1、添加mariadb官方apt源:
1
2
3
4
|
sudo apt-get install software-properties-common sudo apt-key adv --recv-keys --keyserver hkp: //keyserver .ubuntu.com:80 0xcbcb082a1bb943db sudo add-apt-repository 'deb https://mariadb.nethub.com.hk//repo/10.1/ubuntu trusty main' #我的vps是香港softlayer數(shù)據(jù)中心 vps.to的vps,因此,本處添加了hk的apt源,您可以在這里找到更#多的源:https://downloads.mariadb.org/mariadb/repositories |
2、apt-get安裝mariadb:
1
|
pt-get install mariadb-client mariadb-server |
3、安裝時會要求輸入root密碼以及重復(fù)密碼,按照要求進(jìn)行。如果需要修改root密碼,使用:
1
|
/usr/bin/mysqladmin -u root -p 舊密碼 新密碼 |
四、編譯安裝php-7.0.0rc5
1、下載php-7.0.0rc5源碼包:
1
2
3
|
cd /usr/local/src wget https: //downloads .php.net/~ab /php-7 .0.0rc5. tar .gz tar xzf php-7.0.0rc5. tar .gz |
2、安裝php依賴包:
1
|
sudo apt-get install libxml2-dev libpcre3-dev libbz2-dev libcurl4-openssl-dev libjpeg-dev libpng12-dev libxpm-dev libfreetype6-dev libmysqlclient-dev libt1-dev libgd2-xpm-dev libgmp-dev libsasl2-dev libmhash-dev unixodbc-dev freetds-dev libpspell-dev libsnmp-dev libtidy-dev libxslt1-dev libmcrypt-dev |
3、編譯php:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
cd /usr/local/src/php-7 .0.0rc5 . /configure --prefix= /usr/local/php \ --with-config- file -path= /usr/local/php/etc \ --with-fpm-user=www --with-fpm-group=www \ -- enable -fpm \ --disable-fileinfo \ -- enable -mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-iconv- dir = /usr/local \ --with-freetype- dir \ --with-jpeg- dir \ --with-png- dir \ --with-zlib \ --with-libxml- dir = /usr \ -- enable -xml \ --disable-rpath \ -- enable -bcmath \ -- enable -shmop \ -- enable -exif \ -- enable -sysvsem \ -- enable -inline-optimization \ --with-curl \ -- enable -mbregex \ -- enable -inline-optimization \ -- enable -mbstring \ --with-mcrypt \ --with-gd \ -- enable -gd-native-ttf \ --with-openssl \ --with-mhash \ -- enable -pcntl \ -- enable -sockets \ --with-xmlrpc \ -- enable - ftp \ --with-gettext \ -- enable -zip \ -- enable -soap \ --disable-debug make #時間可能較長,我的vps.to vps花費(fèi)大約十五分鐘 make install |
4、添加環(huán)境變量:
1
2
3
4
5
|
vim /etc/environment #在path變量的最后加入: : /usr/local/php/bin #保存退出 source /etc/environment |
5、測試:php -v,輸出php版本就表示安裝成功了。
五、修改nginx、mariadb、php配置文件
1、修改nginx配置文件,建立虛擬主機(jī)配置文件夾:
1
|
mkdir /usr/local/nginx/conf/vhost |
2、編輯nginx.conf,引入所有虛擬主機(jī)配置:
1
2
3
4
5
6
7
|
vim /usr/local/nginx/conf/nginx .conf #在最后的}前一行加入 include vhost/*.conf; #文件頭部 user www; work_process 1; #根據(jù)cpu核數(shù)設(shè)定 #保存退出 |
3、添加nginx服務(wù),并測試nginx:
1
2
3
|
wget https: //raw .github.com /jasongiedymin/nginx-init-ubuntu/master/nginx -o /etc/init .d /nginx chmod +x /etc/init .d /nginx service nginx start |
4、如果出現(xiàn)nginx服務(wù)器正在啟動就表示成功了,最后執(zhí)行以下代碼開機(jī)啟動:
1
|
update-rc.d –f nginx defaults |
5、修改mariadb配置文件,設(shè)置mariadb字符集:
1
|
cd /etc/my .cnf.d vim server.cnf #在[mysqld]段下加入character-set-server=utf8 #在[server]段上方輸入[client]default-character-set=utf8 #保存退出service mysql restart |
6、修改php配置文件,復(fù)制默認(rèn)php.ini文件:
1
|
cd /usr/local/src/php-7 .0.0rc5cp php.ini-production /usr/local/php/etc/php .ini |
7、關(guān)閉display_errors:
1
|
vim /usr/local/php/etc/php .ini #定位到display_errors,設(shè)置:display_errors = off#保存退出 |
8、修改php-fpm配置:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
cd /usr/local/php/etc cp php-fpm.conf.default php-fpm.conf #如果沒有則建立該文件 cd php-fpm.d cp www.conf.default www.conf vim www.conf #修改如下項(xiàng)目: user = www group = www listen = /dev/shm/php-cgi .sock listen.owner = www listen.group = www listen.mode = 0660 #保存退出 |
9、建立php服務(wù):
1
2
3
|
cp /usr/local/src/php-7 .0.0rc5 /sapi/fpm/init .d.php-fpm /etc/init .d /php-fpm chmod +x /etc/init .d /php-fpm update-rc.d -f php-fpm defaults |
10、啟動php:
1
|
service php-fpm start |
六、建立虛擬主機(jī)
1、由于建立虛擬主機(jī)是個比較麻煩的事兒,此處還是借用了oneinstack.com的虛擬主機(jī)腳本,使用如下命令即可使用oneinstack包的虛擬主機(jī)腳本:
1
2
3
4
|
wget https: //mirrors .linuxeye.com /oneinstack . tar .gz tar xzf oneinstack. tar .gz cd oneinstack . /vhost .sh |
2、按提示進(jìn)行即可建立虛擬主機(jī)。(點(diǎn)擊放大)
3、將域名解析到vps上,進(jìn)入對應(yīng)虛擬主機(jī)目錄,編輯如下php文件,或者上傳一個php探針,然后就能查看到lnmp成功了:
七、vps手動安裝lnmp小結(jié)
1、其實(shí),vps手動安裝lnmp還是挺麻煩的,當(dāng)然它的可定制性也是非常高,對于不想使用lnmp一鍵安裝包的朋友來說,自己手動可以編譯最新版本的nginx、mysql、php等,能夠最先體驗(yàn)到新版的性能提升。
2、oneinstack一鍵php/java/hhvm安裝包的作者還有不少的實(shí)用工具,這里有一個自動搜索硬盤并掛載的代碼:
1
2
3
|
wget https: //mirrors .linuxeye.com /scripts/auto_fdisk .sh chmod +x . /auto_fdisk .sh . /auto_fdisk .sh |
3、看到如下圖就表示已經(jīng)自動掛載成功了,該方法在阿里云vps上測試通過,其它的vps主機(jī)都是可以用的。
總結(jié)
以上所述是小編給大家介紹的oneinstack一鍵安裝php/java/hhvm和超詳細(xì)的vps手動安裝lnmp的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對服務(wù)器之家網(wǎng)站的支持!
原文鏈接:https://www.freehao123.com/oneinstack-vps-lnmp/