国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

lnmp編譯安裝教程

yanbingyun1990 / 987人閱讀

摘要:提示如果你真打算采用這種編譯安裝的話,請至少安排半天時間來完成。在安裝完成后可以再設置小點內存跑安裝的時候請按順序安裝。

我們為什么采用LNMP這種架構?
采用Linux、PHP、MySQL的優點我們不必多說。

Nginx是一個小巧而高效的Linux下的Web服務器軟件,是由 Igor Sysoev 為俄羅斯訪問量第二的 Rambler.ru 站點開發的,已經在一些俄羅斯的大型網站上運行多年,目前很多國內外的門戶網站、行業網站也都在是使用Nginx,相當的穩定。

Nginx相當的穩定、功能豐富、安裝配置簡單、低系統資源……

Linux采用的是centos,軟件包統一放在/usr/local/src目錄下.由于 centos源比較老,而且更新起來也比較慢,此處建議你換成163源。提示:如果你真打算采用這種編譯安裝php的話,請至少安排半天時間來完成。如果是在虛擬機里測試的話,建議調大內存以讓時間更短,我本機給了虛擬機2G內存。在安裝完成后可以再設置小點內存跑.安裝的時候請按順序安裝。

更改yum源

更換到163源 cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS-Base.repo CentOS-Base.repo.bak
mv CentOS6-Base-163.repo CentOS-Base.repo
先更新一下

yum clean all
yum makecache
yum update(這步比較慢,建議先不要運行)
準備lnmp安裝環境

先采用yum包安裝一些依賴的東西

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers make cmake libtool* git tree

下載一些軟件都放在/usr/local/src下
使用wget命令下載即可
附上軟件包地址(軟件包都是我一個一個在網上找的,可能軟件包下載地址會失效,你可以給我發郵件或者你百度搜一個)
所需要的軟件包:

mhash-0.9.9.9
http://jaist.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz

mcrypt-2.6.8
http://jaist.dl.sourceforge.net/project/mcrypt/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz

ncurses
http://down1.chinaunix.net/distfiles/ncurses-5.9.tar.gz

pcre-8.31.tar.bz2
http://exim.mirror.fr/pcre/pcre-8.31.tar.bz2

zlib-1.2.8.tar.gz
http://iweb.dl.sourceforge.net/project/libpng/zlib/1.2.8/zlib-1.2.8.tar.gz

freetype-2.3.5.tar.bz2
http://down1.chinaunix.net/distfiles/freetype-2.3.5.tar.bz2

openssl-1.0.1c.tar.gz
http://down1.chinaunix.net/distfiles/openssl-1.0.1c.tar.gz

php-5.5.29.tar.bz2
http://cn2.php.net/distributions/php-5.5.29.tar.bz2
安裝libiconv

cd /usr/local/src
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar zxvf libiconv-1.14.tar.gz 
cd libiconv-1.14/ 
./configure --prefix=/usr/local 
make && make install

在我make && make install的時候出現錯誤了error: ‘gets’ undeclared here (not in a function)。如果你不要遇到遇到,如果遇到請做如下修改:(國外的這文章記錄了http://www.itkb.ro/kb/linux/patch-libiconv-pentru-glibc-216)

cd libiconv-1.14/srclib

編輯stdio.in.h文件,搜索這句話

_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");

把這句刪除換成如下幾句

#if defined(__GLIBC__) && !defined(__UCLIBC__) && !__GLIBC_PREREQ(2, 16)
 _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#endif

然后

cd ..
make && make install

下載并安裝libmcrypt

cd /usr/local/src
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz
tar -zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure
make 
make install 
cd libltdl/ 
./configure --enable-ltdl-install 
make 
make install

安裝mbash

cd /usr/local/src
tar -jxvf mhash-0.9.9.9.tar.bz2
cd mhash-0.9.9.9
./configure
make 
make install 

下載并安裝mcript

 cd /usr/local/src
tar zxvf mcrypt-2.6.8.tar.gz 
cd mcrypt-2.6.8/ 
注意一下這步運行下,不然下面可能報錯
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
./configure 
make 
make install

ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la 
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so 
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4 
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8 
ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a 
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la 
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so 
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2 
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1 
ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config

安裝mysql(mysql5.6.13)

先檢查一下mysql是否已經存在了,如果存在就刪除mysql

rpm -qa | grep mysql

我的顯示如下(如果沒有任何顯示就表示沒有mysql呢)

mysql-libs-5.1.73-3.el6_5.i686

如果存在就卸載mysql

rpm -e mysql-libs-5.1.73-3.el6_5.i686 --nodeps

此時再運行

rpm -qa | grep mysql

發現沒有任何顯示

添加一個mysql用戶(nologin用戶并且沒有家目錄)

useradd -M -s /sbin/nologin mysql

初次編譯mysql的時候時間比較長,請耐心等待吧

cd /usr/local/src
tar -zxf mysql-5.6.13.tar.gz
cd mysql-5.6.13
注意下面是cmake .注意點
cmake .
make && make install
復制mysql配置文件
cp support-files/my-default.cnf /etc/my.cnf
創建系統數據庫表
cd /usr/local/mysql
scripts/mysql_install_db --user=mysql
更改權限
cd /usr/local/mysql
chown -R root:mysql .
chown -R mysql:mysql data
把mysql添加到系統服務中去

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

啟動mysql啟動的時候,一直不動的話按下enter.,就行了

/usr/local/mysql/bin/mysqld_safe --user=mysql &

查看mysql是否啟動

netstat -tunpl | grep 3306

或者pstree,看到有mysqld進程也行 修改mysql密碼

/usr/local/mysql/bin/mysqladmin -u root password "xxxxx"

進入mysql中刪除空密碼和匿名用戶
/usr/local/mysql/bin/mysql -u root -p
select host,user,password from mysql.user;
delete from mysql.user where password="" or user="";
flush privileges;
也可以在mysql修改用戶密碼(只是說明一下)

set password form "root"@"localhost" = password("123456");

關閉mysql的時候可以使用

/usr/local/mysql/bin/mysqladmin -u root -p shutdown

把mysql添加到開機啟動

vim /etc/rc.local

在最后再加一行

/usr/local/mysql/bin/mysqld_safe --user=mysql &

最后做一個軟鏈接方便使用mysql

ln -s /usr/local/mysql/bin/mysql /usr/bin/

nginx安裝

nginx安裝前編譯安裝pcre zlib openssl[openssl安裝用./config]

pcre安裝

cd /usr/local/src
tar -jxf pcre-8.31.tar.bz2
cd pcre-8.31
./configure
make && make install

zlib安裝

cd /usr/local/src
tar -zxf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make && make install

openssl安裝

cd /usr/local/src
tar -zxf openssl-1.0.1c.tar.gz
cd openssl-1.0.1c
./config
make && make install

安裝Nginx

cd /usr/local/src
useradd -M -s /sbin/nologin nginx
解壓Nginx
tar -zxf nginx-2.0.1.tar.gz
cd tengine-2.0.1
注意的是with-pcre這些都指向/usr/local/src這種目錄
./configure --with-pcre=/usr/local/src/pcre-8.31 --with-http_ssl_module --with-zlib=/usr/local/src/zlib-1.2.8 --with-openssl=/usr/local/src/openssl-1.0.1c

make && make install

做軟鏈接方便nginx啟動

ln -s /usr/local/nginx/sbin/nginx /usr/bin/

修改nginx配置文件

vim /usr/local/nginx/conf/nginx.conf
把#user nobody 改成 user nginx;

測試一下nginx配置文件
nginx -t
啟動nginx
nginx
說一下nginx啟動的一些事情 一般來說在nginx的配置文件修改后進行如下操作,nginx -t檢測一下配置文件是否正確,如果正確的話 再使用nginx -s reload 使nginx平滑啟動 把nginx添加到開機啟動

vim /etc/rc.local

在最后新加一行

/usr/local/nginx/sbin/nginx

查看nginx是否啟動

netstat -tunpl | grep 80
pstree 看下有沒有nginx就行了

安裝php

cd /usr/local/src
useradd -M -s /sbin/nologin php
tar -jxf php-5.5.12.tar.bz2
cd php-5.5.12
./configure --enable-opcache --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring=all --with-pdo-mysql --enable-sockets --enable-mbstring --enable-fpm --with-curl --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --enable-xml --with-gd --with-mcrypt --with-libxml-dir=/usr --enable-xml --with-openssl --with-iconv=/usr/local/iconv
make ZEND_EXTRA_LIBS="-liconv"
make install
cp php.ini-development /usr/local/php/etc/php.ini
配置php-fpm
cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf


`user = nobody
group = nobody`
改為
`user = php
group = php`

啟動php-fpm

/usr/local/php/sbin/php-fpm

把php-fpm添加到開機啟動

vim /etc/rc.local

最后一行加上

/usr/local/php/sbin/php-fpm

修改nginx配置文件使之支持php

vim /usr/local/nginx/conf/nginx.conf
#location ~ .php$ {
#    root           html;
#    fastcgi_pass   127.0.0.1:9000;
#    fastcgi_index  index.php;
#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
#    include        fastcgi_params;
#}

修改為

location ~ .php$ {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}
也順便把gzip給開啟下吧

gzip on前面的#去掉

修改完配置之后
nginx -s reload

ok,現在來測試一下環境

cd /usr/local/nginx 
cd html
vim test.php

寫上


然后訪問一下localhost/test.php,正常的話,就一切正常了

如果出問題的話,請看nginx有沒有啟動,php-fpm有沒有啟動

注明幾個問題如果修改php配置文件的時候,需要重啟php-fpm就可以了

先關閉php-fpm

pkill php-fpm

然后運行

/usr/local/php/sbin/php-fpm

就可以了可以看到php-fpm就啟動了pstree可以看到這個進程

pstree

為了更方便的使用php和php-fpm,我做了兩個鏈鏈接

ln -s /usr/local/php/sbin/php-fpm /usr/bin/
ln -s /usr/local/php/bin/php /usr/bin/

nmp安裝就徹底完成了,有什么問題可以聯系我QQ1017109588 [這里沒沒講到如何優化一些配置的問題,以后可以會寫文章分析]

在些也特別說明一下nginx如何支持path_info這種形式。配置文件中可以這樣寫。當然可能對你不需要

location ~ ^(.+.php)(.*)$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_split_path_info ^(.+.php)(.*)$;
 
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        fastcgi_param        PATH_INFO                $fastcgi_path_info;
        fastcgi_param        PATH_TRANSLATED        $document_root$fastcgi_path_info;
        include        fastcgi_params;
    }

LNMP環境搭建完成 你還可以裝一些擴展 例如memcache redisd等

總結

總結:編譯安裝的過程中 操作系統環境不同 軟件包依賴 可能會出現一些報錯

遇到報錯不要慌張 可以去Google一下 大部分的問題都可以解決

還可以在文章下面評論 貼上你的報錯信息 博主可以幫你看看哦

原文地址https://wujunze.com/lnmp_compile_install.jsp轉載請保留原文鏈接

參考

Nginx官方文檔
MySQL官方文檔
PHP官方文檔
等技術文檔

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/30345.html

相關文章

  • 一鍵安裝LNMP或LAMP Web環境實現Linux服務器部署 PHP MySQL Nginx/Ap

    摘要:目前,我們看到的老蔣采用的部署的環境,在鏡像中配置,于是我們會稱作為。有沒有一件傻瓜式安裝工具腳本呢這里老蔣要推薦的來自國內比較老牌且一直更新維護的一鍵安裝包,我們可以較為直觀且無人值守的安裝需要的網站服務器環境。如今我們建站較多的還是會選擇VPS云服務器,很少會去選擇虛擬主機,固然前者有很多的優點。不過相比虛擬主機不同的是,VPS云服務器需要我們自己配置WEB環境,而且我們較多的還是會選擇...

    IntMain 評論0 收藏0
  • Centos7系統LNMP手把手編譯安裝詳細教程

    摘要:需要注意的是按照上的編譯方式,第一次可以安裝成功,卸載后第二次安裝就為提示沒有找到對應的路徑錯誤。要保證和配置的用戶名和用戶組是統一的。 帶圖片博文鏈接 為了避免每次安裝都要折騰好久,記錄一下編譯安裝的詳細教程 PHP環境下載 本文的PHP下載地址: `wget http://cn2.php.net/distributions/php-7.2.0.tar.gz` NGXIN環境下載 ...

    蘇丹 評論0 收藏0
  • Centos7系統LNMP手把手編譯安裝詳細教程

    摘要:需要注意的是按照上的編譯方式,第一次可以安裝成功,卸載后第二次安裝就為提示沒有找到對應的路徑錯誤。要保證和配置的用戶名和用戶組是統一的。 帶圖片博文鏈接 為了避免每次安裝都要折騰好久,記錄一下編譯安裝的詳細教程 PHP環境下載 本文的PHP下載地址: `wget http://cn2.php.net/distributions/php-7.2.0.tar.gz` NGXIN環境下載 ...

    adie 評論0 收藏0
  • 詳細整理5款較為常用的Linux VPS服務器WEB一鍵安裝工具

    摘要:第一個人記憶中這款工具至今估計有十年左右時間當初也是個人站長為方便自己使用環境配置開發的。第二一鍵腳本也是由于個人站長提供的,經過幾年的改善目前也是比較完善。 早年我們如果在Linux服務器配置網站環境的時候一般如何操作的?安裝cPanel面板?這個是要花錢的,記憶中好像每個月需要十多美元,對于普通的個人站長用戶來說確實是不小的費用。即便我們用破解版也不行,因為這個牽扯到安全問題。那我...

    techstay 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<