當前位置:首頁 » 操作系統 » linuxnginx搭建

linuxnginx搭建

發布時間: 2022-05-29 00:35:32

Ⅰ 如何在linux下搭建nginx伺服器

1、下載後解壓nginx

tar -zxvf nginx-1.4.7.tar.gz
2、安裝gcc等依賴包
yum -y install gcc pcre-devel openssl openssl-devel
3、開始安裝nginx
cd進入nginx-1.4.7目錄內
./configure 編譯
make&&make install 這一步需要先cd出來嗎?在裡面會安裝失敗嗎?我忘了 = =
4、此時就已經安裝完成,默認安裝在了/usr/local/nginx/sbin/nginx
5、啟動
命令行輸入/usr/local/nginx/sbin/nginx,沒反應
輸入ps -ef | grep nginx查看nginx進程
6、測試
命令行輸入 curl http://127.0.0.1
會出現welcome to nginx之類的就說明對了!
7、加入到環境變數
vim /etc/profile
尾行添加
PATH=$PATH:/usr/local/nginx/sbin
export PATH
保存關閉後運行 source /etc/profile 即會加入環境變數
8、常用命令
[root@ usr]# nginx -s stop停止nginx
[root@ usr]# nginx 運行nginx
[root@ usr]# nginx -s reload 重啟nginx
[root@ usr]# nginx -t 測試nginx
9、防火牆允許外網訪問
vim /etc/sysconfig/iptables
添加過濾規則
-A -INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
好像是保存後即時生效把?
service iptables stop
service iptables start
重啟服務後還是會生效,親測
10、修改網站默認根目錄路徑
網站默認根目錄放在/usr/local/nginx/html
命令行輸入 vim /usr/local/nginx/conf/nginx.conf
找到改為
server {
listen 80;
server_name localhost;
root /var/www/html/default;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
# root html;
index index.html index.htm;
}
注釋掉下面的,在上面添加自己想要的根目錄,重啟nginx才能生效。

Ⅱ linux虛擬機搭建了nginx伺服器,為什麼在本地瀏覽

如果是在
虛擬機
里搭建的,首先你要確認你的物理集合去辛集時保持網路連接的,然後確定你的心機的IP地址,然後訪問一下試試。
另外的話,你要保證你的
軟體服務
啟動了。
linux虛擬機
搭建了nginx伺服器,為什麼在本地瀏覽

Ⅲ 如何在linux下安裝nginx

安裝nginx前,我們首先要確保系統安裝了g++、gcc、openssl-devel、pcre-devel和zlib-devel軟體,可通過如圖所示命令進行檢測,如果以安裝我們可以通過圖二所示卸載
我們一般安裝linux軟體都會在/usr/local目錄下,然後進行解壓編譯安裝,具體的命令大家請看圖片所示
等待配置和編譯完成,完成後我們就需要配置防火牆,不攔截80埠,設置完成後需要重啟防火牆
接下來介紹下啟動/停止/重啟的具體方法,進入目錄後我們可以用執行sbin/nginx來啟動,也可以通過conf/nginx.conf來啟動,停止我們可以查詢進程使用kill -9 進程號/pkill -9 nginx來結束nginx服務,重啟可以通過 sbin/nginx -s reload來重啟,具體命令大家請看如圖所示
下面來說說基本的操作命令,
nginx -h #幫助
nginx -v #顯示版本
nginx -V #顯示版本和配置信息
nginx -t #測試配置
nginx -q #測試配置時,只輸出錯誤信息
nginx -s stop #停止伺服器
nginx -s reload #重新載入配置
然後請看圖片所示conf文件的配置,來配置nginx的方法
6
好了,這個就完成了,大家看看我的效果吧

Ⅳ linux 版怎麼配置nginx

配置Nginx服務

Nginx是一款相當優秀的用於部署動態網站的服務程序,Nginx最初是為俄羅斯門戶站點而設計的網站服務軟體,作為一款輕量級的網站服務軟體,因其穩定性和豐富的功能而深受信賴,但最最最被認可的是低系統資源、佔用內存少且並發能力強,目前國內如新浪、網易、騰訊等門戶站均在使用,市場佔有份額一直保持在15-16%左右(2015年最新數據)。

Nginx程序的穩定性來自於它採用了分階段的資源分配技術,使得CPU與內存佔用率會非常低,所以使用Nginx程序部署動態網站環境不僅十分的穩定、高效,而且消耗更少的系統資源,豐富的模塊功能也幾乎與Apache程序數量相同,現在已經完全的支持了proxy、rewrite、mod_fcgi、ssl、vhosts等常用模塊。而且還支持了熱部署技術,即能夠可以7*24不間斷提供服務,即便運行數月也無須重啟,而且還可以在不暫停服務的情況下直接對Nginx服務程序進行升級。

坦白來講,雖然Nginx程序的代碼質量非常高,代碼很規范,技術成熟,模塊擴展也很容易,但Nginx依然存在不少問題,比如Nginx是由俄羅斯人創建的,所以在資料文檔方面還並不完善,中文教材的質量更是魚龍混雜,但Nginx近年來增長勢頭迅猛,預測未來應該能夠在輕量級HTTP伺服器市場有不錯的未來。

安裝PCRE(Perl兼容的正則表達式庫,解壓與編譯過程已省略):
[root@linuxprobe ~]# cd /usr/local/src
[root@linuxprobe src]# mkdir /usr/local/pcre
[root@linuxprobe src]# tar xzvf pcre-8.35.tar.gz
[root@linuxprobe src]# cd pcre-8.35
[root@linuxprobe pcre-8.35]# ./configure --prefix=/usr/local/pcre
[root@linuxprobe pcre-8.35]# make
[root@linuxprobe pcre-8.35]# make install

安裝openssl服務程序(解壓與編譯過程已省略):
[root@linuxprobe pcre-8.35]# cd /usr/local/src
[root@linuxprobe src]# mkdir /usr/local/openssl
[root@linuxprobe src]# tar xzvf openssl-1.0.1h.tar.gz
[root@linuxprobe src]# cd openssl-1.0.1h
[root@linuxprobe openssl-1.0.1h]# ./config --prefix=/usr/local/openssl
[root@linuxprobe openssl-1.0.1h]# make
[root@linuxprobe openssl-1.0.1h]# make install

把openssl服務程序命令目錄添加到環境變數中(永久生效):
[root@linuxprobe pcre-8.35]# vim /etc/profile
//將配置文件最下面的參數追加參數為:
export PATH=$PATH:/usr/local/mysql/bin:/usr/local/openssl/bin
[root@linuxprobe pcre-8.35]# source /etc/profile

安裝zlib數據壓縮函數庫(解壓與編譯過程已省略):
[root@linuxprobe pcre-8.35]# cd /usr/local/src
[root@linuxprobe src]# mkdir /usr/local/zlib
[root@linuxprobe src]# tar xzvf zlib-1.2.8.tar.gz
[root@linuxprobe src]# cd zlib-1.2.8
[root@linuxprobe zlib-1.2.8]# ./configure --prefix=/usr/local/zlib
[root@linuxprobe zlib-1.2.8]# make
[root@linuxprobe zlib-1.2.8]# make install

創建用於執行nginx服務的用戶:
[root@linuxprobe zlib-1.2.8]# cd ..
[root@linuxprobe src]# useradd www -s /sbin/nologin

安裝nginx服務程序(openssl,zlib,pcre要寫成源碼解壓路徑!!!):
[root@linuxprobe src]# tar xzvf nginx-1.6.0.tar.gz
[root@linuxprobe src]# cd nginx-1.6.0/
[root@linuxprobe nginx-1.6.0]# ./configure --prefix=/usr/local/nginx --without-http_memcached_mole --user=www --group=www --with-http_stub_status_mole --with-http_ssl_mole --with-http_gzip_static_mole --with-openssl=/usr/local/src/openssl-1.0.1h --with-zlib=/usr/local/src/zlib-1.2.8 --with-pcre=/usr/local/src/pcre-8.35
[root@linuxprobe nginx-1.6.0]# make
[root@linuxprobe nginx-1.6.0]# make install

創建nginx程序腳本(將下面的參數直接復制進去即可):
[root@linuxprobe nginx-1.6.0]# vim /etc/rc.d/init.d/nginx
#!/bin/bash
# nginx - this script starts and stops the nginx daemon
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /etc/nginx/nginx.conf
# config: /usr/local/nginx/conf/nginx.conf
# pidfile: /usr/local/nginx/logs/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx
make_dirs() {
# make required directories
user=`$nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
if [ -z "`grep $user /etc/passwd`" ]; then
useradd -M -s /bin/nologin $user
fi
options=`$nginx -V 2>&1 | grep 'configure arguments:'`
for opt in $options; do
if [ `echo $opt | grep '.*-temp-path'` ]; then
value=`echo $opt | cut -d "=" -f 2`
if [ ! -d "$value" ]; then
# echo "creating" $value
mkdir -p $value && chown -R $user $value
fi
fi
done
}
start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
make_dirs
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
#configtest || return $?
stop
sleep 1
start
}
reload() {
#configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac
[root@linuxprobe nginx-1.6.0]# chmod 755 /etc/rc.d/init.d/nginx

重啟nginx服務程序並添加到開機啟動項:
[root@linuxprobe nginx-1.6.0]# /etc/rc.d/init.d/nginx restart
Restarting nginx (via systemctl): [ OK ]
[root@linuxprobe nginx-1.6.0]# chkconfig nginx on

此時可以通過訪問IP來判斷nginx服務是否順利運行

LNMP(即Linux+Nginx+MYSQL+php)是目前非常熱門的動態網站部署架構,如果你是在搭建這種部署的話可以看下http://www.linuxprobe.com/chapter-20.html

Ⅳ 怎麼在linux下搭建一個nginx伺服器

大家對Nginx伺服器有了解嗎?如果想要了解網站伺服器的朋友,那麼就需要學習一下在電腦中搭建Nginx WEB伺服器的基礎,Nginx主要是用在Linux的主機上,不過它也可以運行在Windows上,下面就讓小編為大家介紹下,如何在Winxp系統中搭建Nginx WEB伺服器。 Winxp系統的電腦怎麼搭建Nginx WEB伺服器 具體方法如下: 1、下載Nginx程序包,僅有1M左右大小,相當小巧功能強大! 2、將下載好的zip壓縮包的文件全部解壓,雙擊運行nginx.exe,你會看到一個黑色窗口一閃而過就沒了,這就說明Nginx伺服器已經正式啟動(沒有程序界面的)。 3、在瀏覽器輸入訪問 127.0.0.1 回車,如果看到「Welcome to nginx!」則說明你在本機搭建的伺服器已經成功運行。如果沒有,請檢查你的電腦的80埠是否被佔用,或者打開任務管理器查看一下是否有兩個「nginx.exe」進程在運行。 4、完成以上簡單的三步後,我們的Nginx網頁伺服器就搭建完成了,但是呢到這里只能支持html的純網頁,如果想讓它支持php腳本還需要進一步安裝php的運行環境。 以上方法操作起來十分便捷,想要在XP系統上免費搭建Nginx伺服器的小夥伴們快來看看吧。如有更多疑問,歡迎訪問安下軟體站。

Ⅵ linux下怎樣配置nginx

Nginx是一款輕量級的Web 伺服器/反向代理伺服器及電子郵件代理伺服器,並在一個BSD-like 協議下發行。
其特點是佔有內存少,並發能力強,事實上nginx的並發能力確實在同類型的網頁伺服器中表現較好。
雲帆提供Flash端的SDK開發包,你可根據自己的需求開發成視頻網站和視頻播放器,使用雲帆技術可以幫助你快速輕量級的實現視頻網站和視頻播放器,降低編解碼技術和網路傳輸技術的開發成本。其中,便支持自搭建Nginx、apache服務。

Ⅶ 怎麼在linux上搭建nginx

(0) 安裝依賴包
yum -y install pcre*
yum install autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel gcc
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
yum -y install pcre-devel
yum -y install openssl openssl-devel
yum -y install lrzsz
yum -y install gcc gcc-c++
yum -y install openssl*


(1) 編譯安裝 PCRE
wgetftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.7.tar.gz
tar zxvf pcre-7.7.tar.gz
cd pcre-7.7
./configure
make
make install
下載 pcre-8.31.tar.gz
[root@localhost /]# cd /media/psf/Home/Downloads
[root@localhost Downloads]# mv pcre-8.31.tar.gz /home/Nginx
[root@localhost Downloads]# cd /home/Nginx
[root@localhost Nginx]# tar -zxvf pcre-8.31.tar.gz
[root@localhost Nginx]# cd pcre-8.31
[root@localhost pcre-8.31]#
[root@localhost pcre-8.31]# make
[root@localhost pcre-8.31]# make install


(2) 編譯安裝 nginx-sticky-mole-1.1
[root@localhost Downloads]# cd /home/Nginx
[root@localhost Nginx]# mkdir nginx-sticky-mole-1.1
[root@localhost Nginx]# cd /media/psf/Home/Downloads
[root@localhost Downloads]#
mv nginx-sticky-mole-1.1.tar.gz /home/Nginx/nginx-sticky-mole-1.1/
[root@localhost Downloads]# cd /home/Nginx/nginx-sticky-mole-1.1/
[root@localhost nginx-sticky-mole-1.1]# tar -zxvf nginx-sticky-mole-1.1.tar.gz

(3) 下載 nginx
[root@localhost local]# wget http://nginx.org/download/nginx-1.7.8.tar.gz

(4) 新建一個 Nginx 目錄
[root@localhost /]# cd home
[root@localhost home]# mkdir Nginx

(5) 將 tar 包移動到 /home/Nginx 目錄下面
[root@localhost local]# mv nginx-1.7.8.tar.gz /home/Nginx
[root@localhost local]# cd /home/Nginx

(6) 將 tar 包解壓
[root@localhost Nginx]# tar -zxvf nginx-1.7.8.tar.gz
[root@localhost Nginx]# cd nginx-1.7.8
[root@localhost nginx-1.7.8]#
./configure --prefix=/usr/local/nginx-1.7.8 --with-http_ssl_mole --with-http_spdy_mole --with-http_stub_status_mole --with-pcre
make && make install


(7) 驗證安裝是否成功
[root@localhost /]# cd /usr/local/nginx-1.7.8/sbin
[root@localhost sbin]# ./nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

(8) 啟動 nginx
[root@localhost sbin]# ./nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
使用命令關閉佔用80埠的程序 sudo fuser -k 80/tcp

[root@localhost sbin]# ./nginx


(9) 瀏覽器訪問:成功

至此,Nginx 安裝完畢;

Ⅷ linux系統怎麼安裝nginx

這里以CentOS6.6系統(32位)中安裝nginx的源碼包,進行講解。
1. nginx源碼包的下載
nginx官方下載地址:http://nginx.org/
選擇你要安裝的nginx版本,這里,我選擇的是 nginx-1.10.2 。
具體的下載鏈接為:http://nginx.org/download/nginx-1.10.2.tar.gz
可以在其他電腦下載好,通過ftp軟體傳給要安裝的linux電腦。也可以直接在linux電腦上使用wget命令下載。這里我們使用後一種方式。
在linux的根目錄,創建一個多級空目錄 /my_package/source,用來存放下載的源碼包。
mkdir -p /my_package/sourcecd /my_package/source12

執行下載命令:
wget http://nginx.org/download/nginx-1.10.2.tar.gz1

下載完成後,在 /my_package/source 目錄中,就有了 nginx-1.10.2.tar.gz 源碼包壓縮文件。
2. nginx的安裝與配置
2.1 准備工作
安裝nginx之前,需要先安裝pcre庫。如果你的linux系統中沒有pcre,需要先進行安裝。
這里,我們使用yum工具,在線快速安裝pcre:
yum -y install pcre
yum -y install pcre-devel12

可以通過下面的命令,找到已安裝的pcre和pcre-devel的位置:
rpm -ql pcre
rpm -ql pcre-devel或
find / -name "*pcre*"1234

2.2 nginx的安裝
配置nginx安裝的參數,比如:安裝路徑,指定依賴庫的具體位置等。
這里我們使用默認安裝配置:
tar -zxvf nginx-1.10.2.tar.gzcd nginx-1.10.2./configure123

如果這一步執行正確,在提示信息中會告知nginx將要安裝的位置、可執行文件的位置等,如下:
nginx path prefix: "/usr/local/nginx"nginx binary file: "/usr/local/nginx/sbin/nginx"nginx moles path: "/usr/local/nginx/moles"nginx configuration prefix: "/usr/local/nginx/conf"nginx configuration file: "/usr/local/nginx/conf/nginx.conf"nginx pid file: "/usr/local/nginx/logs/nginx.pid"nginx error log file: "/usr/local/nginx/logs/error.log"nginx http access log file: "/usr/local/nginx/logs/access.log"nginx http client request body temporary files: "client_body_temp"nginx http proxy temporary files: "proxy_temp"nginx http fastcgi temporary files: "fastcgi_temp"nginx http uwsgi temporary files: "uwsgi_temp"nginx http scgi temporary files: "scgi_temp"12345678910111213

如果這一步出錯了,根據錯誤提示信息解決問題後,使用 make clean 命令,清除產生的臨時文件,再來重新執行 ./configure
如果想查看具體可以配置哪些安裝參數,可以使用下面的命令查看:
./configure --help1

編譯和安裝
makemake install12

到此,nginx的源碼包就安裝完畢了。
2.3 nginx的配置
如果想修改nginx的配置文件,可使用下面的命令:
vi /usr/local/nginx/conf/nginx.conf1

3. nginx的常用命令
檢查測試nginx的配置信息是否正確
/usr/local/nginx/sbin/nginx -t1

啟動nginx
/usr/local/nginx/sbin/nginx1

啟動nginx伺服器後,可以使用下面的命令檢測nginx是否啟動成功,並查看nginx的埠、主進程號、進程名稱等信息。
netstat -tlunp1

也可以使用下面的命令檢測nginx是否啟動成功,並查看nginx的主進程和子進程的詳細信息。
ps aux | grep nginx1

ps aux 命令(a代表前台進程,x代表後台進程,u代表進程的發起者)列出的進程信息中,主要包含以下信息:USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 。這里,簡單說明一下:
USER:表示進程的發起者,也就是說,進程是哪個用戶產生的。
PID:表示進程的id,也稱作,進程號。%CPU:表示進程佔用的CPU資源的百分比。%MEM:表示進程佔用的物理內存的百分比。
VSZ:表示進程佔用的虛擬內存的大小,單位KB。
RSS:表示進程佔用的實際物理內存的大小,單位KB。
TTY:表示進程是在哪個終端中運行的。其中tty1到tty7代表本地控制台終端,tty1到tty6是本地的字元界面終端,tty7是圖形終端。pts/0-255代表虛擬終端(即遠程登錄終端)。
STAT:表示進程的狀態。常見的狀態有:R 運行;S 睡眠;T 停止;s 包含子進程;+ 位於後台。
START:表示進程是在什麼時間啟動的。
TIME:表示進程佔用CPU的運算時間,值越大,越耗費資源。
COMMAND:表示產生該進程的命令(通過它可以識別正在運行的進程名)。1234567891011

成功啟動nginx後,就可以在本地電腦或其他電腦中訪問你的nginx伺服器中的網站了。
本地電腦(即nginx所在的電腦)的訪問方式:curl 127.0.0.1
其他電腦(區域網內)的訪問方式:打開瀏覽器,輸入nginx伺服器的區域網IP即可。12

為了更方便的使用 /usr/local/nginx/sbin 中的命令,
我們將其加入linux系統的環境變數,即修改文件 /etc/profile,在最後加入下面的代碼:
export PATH="/usr/local/nginx/sbin:$PATH"1

保存退出後,執行命令:source /etc/profile 可使該配置文件立即生效。
關閉nginx
nginx -s stop 快速關閉nginx
nginx -s quit 平滑關閉nginx
kill -s QUIT 11247 通過linux的kill命令殺死nginx進程,11247為nginx的主進程號123

重新載入nginx的配置文件
nginx -s reload 修改了nginx的配置文件後,可以使用該命令讓新的配置立即生效,而不用重啟整個nginx伺服器

希望我的方法能夠幫助到你

Ⅸ linux 怎麼用nginx 搭建網站

Hi, 今天我們將會學習如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/負載均衡伺服器。Weave 可以創建一個虛擬網路將 Docker 容器彼此連接在一起,支持跨主機部署及自動發現。它可以讓我們更加專注於應用的開發,而不是基礎架構。Weave 提供了一個如此棒的環境,彷彿它的所有容器都屬於同個網路,不需要埠/映射/連接等的配置。容器中的應用提供的服務在 weave 網路中可以輕易地被外部世界訪問,不論你的容器運行在哪裡。在這個教程里我們將會使用 weave 快速並且簡單地將 nginx web 伺服器部署為一個負載均衡器,反向代理一個運行在 Amazon Web Services 裡面多個節點上的 docker 容器中的簡單 php 應用。這里我們將會介紹 WeaveDNS,它提供一個不需要改變代碼就可以讓容器利用主機名找到的簡單方式,並且能夠讓其他容器通過主機名連接彼此。 在這篇教程里,我們將使用 nginx 來將負載均衡分配到一個運行 Apache 的容器集合。最簡單輕松的方法就是使用 Weave 來把運行在 ubuntu 上的 docker 容器中的 nginx 配置成負載均衡伺服器。 Docker之weave工具 weave是什麼呢?weave創建了一個虛擬網路,用來連接部署在多台機器上的docker容器。 下面看看weave的應用場景: 應用在使用該網路的時候就像所有的容器都在同一個交換機網路下一樣,不需要配置埠映射、連接等等,容器中的應用提供的服務在weaver網路中可以被外部世界訪問,不論你的容器運行在哪裡。同樣的,已經存在的系統應用也可以暴露給容器中的應用來調用,而不用擔心內部應用運行的位置。 weave可以穿透防火牆,流量是被加密的,允許主機連接通過一個不被信任的網路,使用weave你可以方便的部署多個容器在不同的地方運行 假如你有一個docker應用運行在兩台不同的主機HOST1和HOST2上面,也就是我們要在這兩台主機上各部署一個相同類型的docker應用。 在HOST1上面:啟動weave 代碼如下: #這一步先啟動weave路由,需要在每一台HOST上都啟動 weave launch #啟動一個容器,在命令行設置了一個ip,weave run調用docker run -d,因此我們可以使用這種辦法啟動一個容器,同理存在weave start命令,它是調用docker start命令啟動已經存在的容器,如果我們在該HOST1上有多個容器要部署,則繼續執行第二行的命令即可,只要保證容器設置的ip沒有沖突即可,同一個網段的ip可以到處使用 ssh=$(weave run 10/weaveworks/guides $ cd weave-gs/aws-nginx-ubuntu-simple 在克隆完倉庫之後,我們執行下面的腳本,這個腳本將會部署兩個 t1.micro 實例,每個實例中都是 ubuntu 作為操作系統並用 weave 跑著 docker 容器。 復制代碼 代碼如下: $ sudo ./demo-aws-setup.sh 在這里,我們將會在以後用到這些實例的 IP 地址。這些地址儲存在一個 weavedemo.env 文件中,這個文件創建於執行 demo-aws-setup.sh 腳本期間。為了獲取這些 IP 地址,我們需要執行下面的命令,命令輸出類似下面的信息。 代碼如下: $ cat weavedemo.env export WEAVE_AWS_DEMO_HOST1=52.26.175.175 export WEAVE_AWS_DEMO_HOST2=52.26.83.141 export WEAVE_AWS_DEMO_HOSTCOUNT=2 export WEAVE_AWS_DEMO_HOSTS=(52.26.175.175 52.26.83.141) 請注意這些不是固定的 IP 地址,AWS 會為我們的實例動態地分配 IP 地址。 我們在 bash 下執行下面的命令使環境變數生效。 代碼如下: . ./weavedemo.env 2. 啟動 Weave 和 WeaveDNS 在安裝完實例之後,我們將會在每台主機上啟動 weave 以及 weavedns。Weave 以及 weavedns 使得我們能夠輕易地將容器部署到一個全新的基礎架構以及配置中, 不需要改變代碼,也不需要去理解像 Ambassador 容器以及 Link 機制之類的概念。下面是在第一台主機上啟動 weave 以及 weavedns 的命令。 代碼如下: ssh -i weavedemo-key.pem ubuntu@$WEAVE_AWS_DEMO_HOST1 $ sudo weave launch $ sudo weave launch-dns 10.2.1.1/24 下一步,我也准備在第二台主機上啟動 weave 以及 weavedns。 代碼如下: ssh -i weavedemo-key.pem ubuntu@$WEAVE_AWS_DEMO_HOST2 $ sudo weave launch $WEAVE_AWS_DEMO_HOST1 $ sudo weave launch-dns 10.2.1.2/24 3. 啟動應用容器 現在,我們准備跨兩台主機啟動六個容器,這兩台主機都用 Apache2 Web 服務實例跑著簡單的 php 網站。為了在第一個 Apache2 Web 伺服器實例跑三個容器, 我們將會使用下面的命令。 復制代碼 代碼如下: ssh -i weavedemo-key.pem ubuntu@$WEAVE_AWS_DEMO_HOST1 $ sudo weave run --with-dns 10.3.1.1/24 -h ws1.weave.local fintanr/weave-gs-nginx-apache $ sudo weave run --with-dns 10.3.1.2/24 -h ws2.weave.local fintanr/weave-gs-nginx-apache $ sudo weave run --with-dns 10.3.1.3/24 -h ws3.weave.local fintanr/weave-gs-nginx-apache 在那之後,我們將會在第二個實例上啟動另外三個容器,請使用下面的命令。 代碼如下: ssh -i weavedemo-key.pem ubuntu@$WEAVE_AWS_DEMO_HOST2 $ sudo weave run --with-dns 10.3.1.4/24 -h ws4.weave.local fintanr/weave-gs-nginx-apache $ sudo weave run --with-dns 10.3.1.5/24 -h ws5.weave.local fintanr/weave-gs-nginx-apache $ sudo weave run --with-dns 10.3.1.6/24 -h ws6.weave.local fintanr/weave-gs-nginx-apache 注意: 在這里,--with-dns 選項告訴容器使用 weavedns 來解析主機名,-h x.weave.local 則使得 weavedns 能夠解析該主機。 4. 啟動 Nginx 容器 在應用容器如預期的運行後,我們將會啟動 nginx 容器,它將會在六個應用容器服務之間輪詢並提供反向代理或者負載均衡。 為了啟動 nginx 容器,請使用下面的命令。 復制代碼 代碼如下: ssh -i weavedemo-key.pem ubuntu@$WEAVE_AWS_DEMO_HOST1 $ sudo weave run --with-dns 10.3.1.7/24 -ti -h nginx.weave.local -d -p 80:80 fintanr/weave-gs-nginx-simple 因此,我們的 nginx 容器在 $WEAVEAWSDEMO_HOST1 上公開地暴露成為一個 http 伺服器。 5. 測試負載均衡伺服器 為了測試我們的負載均衡伺服器是否可以工作,我們執行一段可以發送 http 請求給 nginx 容器的腳本。我們將會發送6個請求,這樣我們就能看到 nginx 在一次的輪詢中服務於每台 web 伺服器之間。 代碼如下: $ ./access-aws-hosts.sh { "message" : "Hello Weave - nginx example", "hostname" : "ws1.weave.local", "date" : "2015-06-26 12:24:23" } { "message" : "Hello Weave - nginx example", "hostname" : "ws2.weave.local", "date" : "2015-06-26 12:24:23" } { "message" : "Hello Weave - nginx example", "hostname" : "ws3.weave.local", "date" : "2015-06-26 12:24:23" } { "message" : "Hello Weave - nginx example", "hostname" : "ws4.weave.local", "date" : "2015-06-26 12:24:23" } { "message" : "Hello Weave - nginx example", "hostname" : "ws5.weave.local", "date" : "2015-06-26 12:24:23" } { "message" : "Hello Weave - nginx example", "hostname" : "ws6.weave.local", "date" : "2015-06-26 12:24:23" } 結束語 我們最終成功地將 nginx 配置成一個反向代理/負載均衡伺服器,通過使用 weave 以及運行在 AWS(Amazon Web Service)EC2 裡面的 ubuntu 伺服器中的 docker。從上面的步驟輸出可以清楚的看到我們已經成功地配置了 nginx。我們可以看到請求在一次輪詢中被發送到6個應用容器,這些容器在 Apache2 Web 伺服器中跑著 PHP 應用。在這里,我們部署了一個容器化的 PHP 應用,使用 nginx 橫跨多台在 AWS EC2 上的主機而不需要改變代碼,利用 weavedns 使得每個容器連接在一起,只需要主機名就夠了,眼前的這些便捷, 都要歸功於 weave 以及 weavedns。

Ⅹ 如何在遠程Linux伺服器上搭建Nginx

1.將nginx的壓縮包nginx-1.8.0.tar.gz上傳到Linux伺服器

2.由於nginx是C語言開發的並且我們這里是通過編譯nginx的源碼來安裝nginx,所以Linux上要安裝C語言的編譯環境gcc,

如果已經安裝此步可以省略,否則執行命令:

yum install gcc-c++

3.nginx的http模塊使用pcre來解析正則表達式,所以需要在linux上安裝pcre庫。

yum install -y pcre pcre-devel

4.zlib庫提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。

yum install -y zlib zlib-devel

5.nginx不僅支持http協議,還支持https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫。

yum install -y openssl openssl-devel

6.在Linux上創建nginx的臨時目錄,注意我這里是在Linux文件系統下的
/var下創建文件夾temp在temp下創建nginx。即:/var/temp/nginx

7.執行命令:

./configure --prefix=/usr/local/nginx --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_gzip_static_mole --http-client-body-temp-path=/var/temp/nginx/client --http-proxy-temp-path=/var/temp/nginx/proxy --http-fastcgi-temp-path=/var/temp/nginx/fastcgi --http-uwsgi-temp-path=/var/temp/nginx/uwsgi --http-scgi-temp-path=/var/temp/nginx/scgi

8.編譯源碼,安裝nginx:

makemake install

9.啟動nginx:

cd /usr/local/nginx/sbin/./nginx -c /usr/local/nginx/conf/nginx.conf

在瀏覽器中訪問: http://localhost 出現下面界面表示安裝成功:

我們此時也可以查看到nginx進程的運行情況:

ps aux|grep nginx

10.nginx伺服器的停止方式:

方式一:先查出nginx進程id再使用kill命令強制殺掉進程。

cd /usr/local/nginx/sbin./nginx -s stop

方式二(推薦):待nginx進程處理任務完畢進行停止。

cd /usr/local/nginx/sbin./nginx -s quit

以上就是本文的全部內容,希望對大家的學習有所幫助

熱點內容
英國學術訪問簽證 發布:2024-05-02 00:26:30 瀏覽:55
刷歡樂豆腳本 發布:2024-05-02 00:25:51 瀏覽:173
安卓買藍牙耳機什麼牌子好 發布:2024-05-02 00:08:32 瀏覽:944
編譯器基礎知識 發布:2024-05-01 23:50:59 瀏覽:25
我的世界拔刀劍伺服器和ip地址 發布:2024-05-01 23:26:24 瀏覽:530
phpsmtp郵件發送 發布:2024-05-01 22:43:04 瀏覽:238
資料庫的規范化理論 發布:2024-05-01 22:38:16 瀏覽:593
md5加密ppt 發布:2024-05-01 21:51:46 瀏覽:353
dnf雲伺服器50g 發布:2024-05-01 21:44:56 瀏覽:450
壓縮性粉碎性骨折 發布:2024-05-01 21:23:46 瀏覽:614