繼著名的LAMP Stack(Linux + Apache + MySQL/MariaDB + PHP)網站環境之后,LNMP Stack(Linux + Nginx + MySQL/MariaDB + PHP)以其負載小、靜態文件處理能力強的優勢,在Linux平臺上開始流行,尤其是在配置不太高的VPS上應用廣泛。
說起LNMP,多數人應該知道lnmp.org站長開發的LNMP一鍵安裝包,該腳本虛擬主機管理、FTP用戶管理、Nginx、MySQL/MariaDB、PHP的升級、常用緩存組件的安裝、重置MySQL root密碼、502自動重啟等,在國內用戶眾多,且有官方論壇作為技術支持。
不過,LNMP一鍵安裝包也并非只有lnmp.org一家,本篇文章就來分享一下Linux運維筆記下的一鍵PHP/JAVA/HHVM安裝工具,Linux運維筆記lnmp、lamp、lnmpa一鍵安裝包長年堅持更新,作者博客也有不少原創Linux技術文章和VPS腳本工具,看得出是一個“純”程序猿。
OneinStack的一鍵LNMP安裝包與lnmp.org站長開發的LNMP一鍵安裝包最大的不同之處就是,多出了支持lnmt(Linux + Nginx+ MySQL+ Tomcat):Nginx處理靜態,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或者HHVM環境而煩惱的話,OneinStack就可以助你一臂之力。
當然,喜歡手工制作的LNMP,本篇文章就為大家分享一篇超詳細的VPS手動安裝LNMP的教程,給有折騰精神的朋友參考參考。
OneinStack一鍵PHP/JAVA/HHVM安裝和超詳細的VPS手動安裝LNMP
一、OneinStack一鍵PHP/JAVA/HHVM安裝
1、OneinStack官網:
官方網站:https://oneinstack.com/
2、OneinStack一鍵PHP/JAVA/HHVM安裝代碼如下:(阿里云用戶可以選擇OneinStack阿里云節點,這樣速度會更快一些)
yum -y install wget screen curl python #for CentOS/Redhat# apt-get -y install wget screen curl python #for Debian/Ubuntuwget http://aliyun-oss.linuxeye.com/oneinstack-full.tar.gz #阿里云用戶下載wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz #包含源碼,國內外均可下載wget http://mirrors.linuxeye.com/oneinstack.tar.gz #不包含源碼,建議僅國外主機下載tar xzf oneinstack-full.tar.gzcd oneinstack #如果需要修改目錄(安裝、數據存儲、Nginx日志),請修改options.conf文件screen -S oneinstack #如果網路出現中斷,可以執行命令`screen -r oneinstack`重新連接安裝窗口./install.sh #注:請勿sh install.sh或者bash install.sh這樣執行
3、OneinStack一鍵安裝包支持以下組合自由安裝:
lnmp(Linux + Nginx+ MySQL+ PHP)lamp(Linux + Apache+ MySQL+ PHP)lnmpa(Linux + Nginx+ MySQL+ PHP+ Apache):Nginx處理靜態,Apache(mod_php)處理動態PHPlnmt(Linux + Nginx+ MySQL+ Tomcat):Nginx處理靜態,Tomcat(JDK)處理JAVAlnmh(Linux + Nginx+ MySQL+ HHVM)
4、你安裝時可以自己選擇。(點擊放大)
5、然后你可以根據你自己的需要來安裝PHP緩存加速器,提供ZendOPcache、xcache、apcu、eAccelerator。(點擊放大)
6、還有php加解密工具ionCube、ZendGuardLoader ,和Memcached、Redis等。(點擊放大)
7、OneinStack一鍵安裝支持升級:./upgrade.sh,提供了Nginx、Tengine、Apache、PHP、MySQL、Redis等升級。(點擊放大)
Ubuntu14.04LTS上的Nginx-1.9.5 + MariaDB-10.1 + PHP-7.0.0RC5網站環境搭建教程
二、編譯安裝Nginx-1.9.5
1、上面是LNMP一鍵安裝方法,接下來就是關于在Ubuntu-14.04 LTS系統上手動搭建LNMP環境的教程。之所以選擇手動搭建環境,無非是為了裝逼(大霧)從手動搭建中積累搭建環境的經驗,并且享受到一定的樂趣。如果您對這方面感興趣,又有足夠的閑暇時間,不妨一試。
2、首先,到nginx官方下載nginx源碼(注:由于本博安裝nginx-1.9.5的原因是為了支持HTTP/2協議,所以對于部分不需要SSL的網站,會在本段后給出一個1.8.0的教程)。
cd /usr/local/srcwget https://nginx.org/download/nginx-1.9.5.tar.gz
3、 下載LibreSSL(注:本博使用LibreSSL的目的是支持SSL中使用的ChaCha20-Poly1305流式加密算法,對于使用AES-GCM的站點,也可以使用該SSL庫)。
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、現在,/usr/local/src的目錄結構類似這樣(以反斜線與縮進顯示結構):
usr/ local/ src/ libressl-2.3.0 nginx-1.9.5
5、 編譯準備工作:
apt-get install libpcre3 libpcre3-dev zlib1g zlib1g-devgroupadd wwwuseradd www -g www
6、開始編譯nginx:
./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、我所使用的編譯參數說明如下:
--user=www / #指定nginx運行用戶--group=www / #指定nginx運行用戶組--prefix=/usr/local/nginx / #指定nginx安裝路徑,不用修改--with-http_stub_status_module / #開啟狀態監控模塊--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完成,開始編譯:
makemake install
9、加入環境變量:
vim /etc/environment#vim操作請自行Google#在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,操作步驟和上面一樣的,代碼如下:
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操作請自行Google#在PATH變量的最后加入:/usr/local/nginx/sbin#完成后類似于PATH="/.../:/.../:......:/usr/local/nginx/sbin"#保存退出source /etc/environmentnginx -v
三、apt-get快速安裝MariaDB-10.1
1、添加MariaDB官方apt源:
sudo apt-get install software-properties-commonsudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943dbsudo add-apt-repository 'deb https://mariadb.nethub.com.hk//repo/10.1/ubuntu trusty main'#我的VPS是香港softlayer數據中心 vps.to的VPS,因此,本處添加了HK的apt源,您可以在這里找到更#多的源:https://downloads.mariadb.org/mariadb/repositories
2、apt-get安裝MariaDB:
pt-get install mariadb-client mariadb-server
3、安裝時會要求輸入root密碼以及重復密碼,按照要求進行。如果需要修改root密碼,使用:
/usr/bin/mysqladmin -u root -p 舊密碼 新密碼
四、編譯安裝PHP-7.0.0RC5
1、下載PHP-7.0.0RC5源碼包:
cd /usr/local/srcwget https://downloads.php.net/~ab/php-7.0.0RC5.tar.gztar xzf php-7.0.0RC5.tar.gz
2、安裝PHP依賴包:
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:
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-debugmake #時間可能較長,我的vps.to VPS花費大約十五分鐘make install
4、添加環境變量:
vim /etc/environment#在PATH變量的最后加入::/usr/local/php/bin#保存退出source /etc/environment
5、測試:php -v,輸出PHP版本就表示安裝成功了。
五、修改nginx、MariaDB、PHP配置文件
1、修改nginx配置文件,建立虛擬主機配置文件夾:
mkdir /usr/local/nginx/conf/vhost
2、編輯nginx.conf,引入所有虛擬主機配置:
vim /usr/local/nginx/conf/nginx.conf#在最后的}前一行加入include vhost/*.conf;#文件頭部user www;work_process 1;#根據CPU核數設定#保存退出
3、添加nginx服務,并測試nginx:
wget https://raw.github.com/JasonGiedymin/nginx-init-ubuntu/master/nginx -O /etc/init.d/nginxchmod +x /etc/init.d/nginxservice nginx start
4、如果出現Nginx服務器正在啟動就表示成功了,最后執行以下代碼開機啟動:
update-rc.d –f nginx defaults
5、修改MariaDB配置文件,設置MariaDB字符集:
cd /etc/my.cnf.d vim server.cnf #在[mysqld]段下加入character-set-server=utf8 #在[server]段上方輸入[client]default-character-set=utf8 #保存退出service mysql restart
6、修改PHP配置文件,復制默認php.ini文件:
cd /usr/local/src/php-7.0.0RC5cp php.ini-production /usr/local/php/etc/php.ini
7、關閉display_errors:
vim /usr/local/php/etc/php.ini#定位到display_errors,設置:display_errors = Off#保存退出
8、修改php-fpm配置:
cd /usr/local/php/etccp php-fpm.conf.default php-fpm.conf #如果沒有則建立該文件cd php-fpm.dcp www.conf.default www.confvim www.conf#修改如下項目:user = wwwgroup = wwwlisten = /dev/shm/php-cgi.socklisten.owner = wwwlisten.group = wwwlisten.mode = 0660#保存退出
9、建立PHP服務:
cp /usr/local/src/php-7.0.0RC5/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpmchmod +x /etc/init.d/php-fpmupdate-rc.d -f php-fpm defaults
10、啟動php:
service php-fpm start
六、建立虛擬主機
1、由于建立虛擬主機是個比較麻煩的事兒,此處還是借用了oneinstack.com的虛擬主機腳本,使用如下命令即可使用oneinstack包的虛擬主機腳本:
wget https://mirrors.linuxeye.com/oneinstack.tar.gztar xzf oneinstack.tar.gzcd oneinstack./vhost.sh
2、按提示進行即可建立虛擬主機。(點擊放大)
3、將域名解析到VPS上,進入對應虛擬主機目錄,編輯如下PHP文件,或者上傳一個PHP探針,然后就能查看到LNMP成功了:
七、VPS手動安裝LNMP小結
1、其實,VPS手動安裝LNMP還是挺麻煩的,當然它的可定制性也是非常高,對于不想使用LNMP一鍵安裝包的朋友來說,自己手動可以編譯最新版本的Nginx、MysqL、PHP等,能夠最先體驗到新版的性能提升。
2、OneinStack一鍵PHP/JAVA/HHVM安裝包的作者還有不少的實用工具,這里有一個自動搜索硬盤并掛載的代碼:
wget https://mirrors.linuxeye.com/scripts/auto_fdisk.shchmod +x ./auto_fdisk.sh./auto_fdisk.sh
3、看到如下圖就表示已經自動掛載成功了,該方法在阿里云VPS上測試通過,其它的VPS主機都是可以用的。
總結
以上所述是小編給大家介紹的OneinStack一鍵安裝PHP/JAVA/HHVM和超詳細的VPS手動安裝LNMP的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!
新聞熱點
疑難解答
圖片精選