nginx 網(wǎng)站的建立及使用過程中遇到的問題

1.單一網(wǎng)站n

1)使用默認80端口訪問:

server {

? ? ? ? listen? ? ? 80;? ? ? ? ? ? ? #端口監(jiān)聽

? ? ? ? location / {

? ? ? ? ? ? root? /home/ceshi; #網(wǎng)站地址

? ? ? ? ? ? index? index.html index.htm index.php;  #默認訪問頁面

? ? ? ? }

? ? ? ? error_page? 500 502 503 504? /50x.html;  #錯誤頁面

? ? ? ? location = /50x.html {

? ? ? ? ? ? root? html;

? ? ? ? }

? ? ? ? access_log? logs/ceshi-access.log? main;  #訪問日志

? ? ? ? error_log? logs/ceshi-error.log? notice;    #錯誤日志

? ? }

2) 域名訪問或者是ip+端口訪問

server {

? ? ? ? listen? ? ? 8001;? ? ? ?#端口監(jiān)聽

? ? ? ? server_name? ceshi.loc;? ? ?#域名配置? ??

? ? ? ? location / {

? ? ? ? ? ? root? /home/ceshi;? ? ? ? ? ??#網(wǎng)站地址

? ? ? ? ? ? index? index.html index.htm index.php;? ? ? ??#定義首頁索引文件的名稱

? ? ? ? }

? ? ? ? error_page? 500 502 503 504? /50x.html;? ? ? ??#錯誤頁面

? ? ? ? location = /50x.html {

? ? ? ? ? ? root? html;

? ? ? ? }

? ? ? ? access_log? logs/ceshi-access.log? main;? ? ? ??#訪問日志

? ? ? ? error_log? logs/ceshi-error.log? notice;? ? ? ? ? ? ??#錯誤日志

? ? }

2.后端為index.php的網(wǎng)站

server {

? ? ? ? listen? ? ? 8002;

? ? ? ? root? /home/ceshi;? ? ? ? ? ? #將root變成server的全局變量

? ? ? ? location / {

? ? ? ? ? ? index? index.html index.htm index.php;? ??#默認訪問頁面

? ? ? ? }

? ? ? ? location ~ \.php$ {

? ? ? ? ? ? fastcgi_pass? 127.0.0.1:9000;     #php-fpm監(jiān)聽的地址

? ? ? ? ? ? #fastcgi_index? index.php;

? ? ? ? ? ? #fastcgi_param? SCRIPT_FILENAME $document_root$fastcgi_script_name;

? ? ? ? ? ? #include? ? ? ? fastcgi_params;

? ? ? ? ? ? include? ? ? ? fastcgi.conf;   #等價于上面兩條代碼

? ? ? ? }

? ? ? ? error_page? 500 502 503 504? /50x.html;

? ? ? ? location = /50x.html {

? ? ? ? ? ? root? html;

? ? ? ? }

? ? ? ? access_log? logs/ceshi-access.log? main;     ?#訪問日志

? ? ? ? error_log? logs/ceshi-error.log? notice;       ??#錯誤日志

? ? }

3.php-ci 框架網(wǎng)站的搭建

CI框架結(jié)構(gòu)圖

server {

? ? ? ? listen? ? ? 8003;

? ? ? ? root? ? /home/advert/;

? ? ? ? index? index.htm index.php ;

? ? ? ? location / {

? ? ? ? ? ? fastcgi_pass? 127.0.0.1:9000;

? ? ? ? ? ? fastcgi_param SCRIPT_FILENAME $document_root/index.php;

? ? ? ? ? ? fastcgi_param PATH_INFO $fastcgi_path_info;

? ? ? ? ? ? ##正則解析路徑? ? ?

? ? ? ? ? ? fastcgi_split_path_info ^(.+\.php)(.*)$;

? ? ? ? ? ? #fastcgi_param? SCRIPT_FILENAME $document_root$fastcgi_script_name;? ? ? ? ? ? ? ?

? ? ? ? ? ? #include? ? ? ? fastcgi_params;? ? ? ? ? ?

? ? ? ? ? ? include? ? ? ? fastcgi.conf;   #等價于上面兩條代碼

? ? ? ? }

? ? ? ? error_log? logs/advert-error.log? notice;

? ? ? ? access_log? logs/advert-access.log? main;

? ? }

4.反向代理

server {

? ? ? ? listen? ? ? 8004;

? ? ? ? location /{

? ? ? ? ? ? ? ? proxy_pass? http://192.168.9.221:8001;? ? ? ? ?#反向代理的網(wǎng)址

? ? ? ? }

? ? ? ? error_log? logs/pass-error.log? notice;

? ? ? ? access_log? logs/pass-access.log? main;

? ? }

5.負載均衡

upstream ceshi {? ? ? ? ? #負載均衡的地址

? ? ? ? ? ? server 192.168.9.221:8001;

? ? ? ? ? ? server 192.168.9.221:8002;

   server 192.168.9.221:8002 weight=1 max_fails=1 down;

? ? ? ? ? #weight權(quán)重? ? max_fail最大失敗次數(shù)? ? ?down 不參與負均衡? ?fail_timeout 失敗超時時間  Backup備份

? ? ? ? }

? ? server {

? ? ? ? listen? ? ? 8005;

? ? ? ? location / {

? ? ? ? ? ? ? #設(shè)置主機頭和客戶端真實地址术荤,以便服務(wù)器獲取客戶端真實IP

? ? ? ? ? ? ? ? proxy_set_header Host $host;

? ? ? ? ? ? ? ? proxy_set_header X-Real-IP $remote_addr;

? ? ? ? ? ? ? ? proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

? ? ? ? ? ? ? ? proxy_buffering off;? ? ? ? ? ? ? ? ? #禁用緩存

? ? ? ? ? ? ? ? proxy_pass http://ceshi;  ? ?#負載均衡的名稱

? ? ? ? }

? ? ? ? error_page? 500 502 503 504? /50x.html;

? ? ? ? location = /50x.html {

? ? ? ? ? ? root? html;

? ? ? ? }

? ? error_log? logs/load-error.log? notice;? ? ? ?

 access_log? logs/load-access.log? main;

? ? }

補充知識點:

A.nginx 的 upstream目前支持分配方式

1)厢拭、輪詢(默認)?

每個請求按時間順序逐一分配到不同的后端服務(wù)器,如果后端服務(wù)器down掉妓肢,能自動剔除严肪。

?2)键思、weight?

指定輪詢幾率,weight和訪問比率成正比阐枣,用于后端服務(wù)器性能不均的情況韧涨。

?3)、ip_hash?

每個請求按訪問ip的hash結(jié)果分配侮繁,這樣每個訪客固定訪問一個后端服務(wù)器虑粥,可以解決session的問題。 ?

4)宪哩、fair(第三方)?

按后端服務(wù)器的響應(yīng)時間來分配請求娩贷,響應(yīng)時間短的優(yōu)先分配。

5)锁孟、url_hash(第三方)

B.每個設(shè)備的狀態(tài)設(shè)置匯總:

1).down 表示單前的server暫時不參與負載?

2).weight 默認為1.weight越大彬祖,負載的權(quán)重就越大茁瘦。?

3).max_fails:允許請求失敗的次數(shù)默認為1.當超過最大次數(shù)時,返回proxy_next_upstream模塊定義的錯誤?

4).fail_timeout: max_fails次失敗后储笑,暫停的時間甜熔。?

5).backup: 其它所有的非backup機器down或者忙的時候,請求backup機器突倍。所以這臺機器壓力會最輕

6.單獨提出配置文件

在nginx.conf文件中

include /usr/local/nginx/conf/service.conf;

server.conf中指定server模塊的定義

問題匯總:

1)[emerg] unknown log format "main" in /usr/local/nginx/conf/nginx.conf:XX

解決方法:

打開nginx.conf腔稀,"main"錯誤是因為丟失了log_format選項,默認是被屏蔽掉了羽历,將屏蔽打開就好了

2)Nginx配置文件問題導(dǎo)致打不開網(wǎng)站unknown directive

解決方法:

注意符號兩面要有空格

3)[error] 1723#0: *10 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.9.11, server: , request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.9.11:8002"

造成原因: 9000端口沒有監(jiān)聽焊虏,php-fpm沒有啟動

解決方法:

A。ubuntu:? ?apt-get install php5-fpm? ? ?

  service? ?php5-fpm start

B. 源碼安裝

在安裝php 的時候需要指定參數(shù)--enable-fpm(php未安裝的時候)

4.FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream

造成的原因:定義調(diào)用腳本文件路徑有問題

解決方法:

fastcgi_param SCRIPT_FILENAME  項目路徑$fastcgi_script_name;

?include? ? ? ? fastcgi_params;

5) FastCGI sent in stderr: "Access to the script '/home/advert' has been denied (see security.limit_extensions)"

解決方法:

a.修改php.ini配置文件中cgi.fix_pathinfo=1

b.FPM的security.limit_extension設(shè)置用于限制允許解析的主腳本的擴展名秕磷。它可以防止惡意代碼被執(zhí)行诵闭。默認值是簡單的.php可以配置/etc/php5/fpm/pool.d/www.conf

將/etc/php5/fpm/pool.d/www.conf文件中的security.limit_extension注釋打開

c.重新啟動php-fpm和nginx服務(wù),頁面能夠正常訪問

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末澎嚣,一起剝皮案震驚了整個濱河市疏尿,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌易桃,老刑警劉巖褥琐,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異颈抚,居然都是意外死亡,警方通過查閱死者的電腦和手機嚼鹉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進店門贩汉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人锚赤,你說我怎么就攤上這事匹舞。” “怎么了线脚?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵赐稽,是天一觀的道長。 經(jīng)常有香客問我浑侥,道長姊舵,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任寓落,我火速辦了婚禮括丁,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘伶选。我一直安慰自己史飞,他們只是感情好尖昏,可當我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著构资,像睡著了一般抽诉。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上吐绵,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天迹淌,我揣著相機與錄音,去河邊找鬼拦赠。 笑死巍沙,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的荷鼠。 我是一名探鬼主播句携,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼允乐!你這毒婦竟也來了矮嫉?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤牍疏,失蹤者是張志新(化名)和其女友劉穎蠢笋,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鳞陨,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡昨寞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了厦滤。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片援岩。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖掏导,靈堂內(nèi)的尸體忽然破棺而出享怀,到底是詐尸還是另有隱情,我是刑警寧澤趟咆,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布添瓷,位于F島的核電站,受9級特大地震影響值纱,放射性物質(zhì)發(fā)生泄漏鳞贷。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一虐唠、第九天 我趴在偏房一處隱蔽的房頂上張望悄晃。 院中可真熱鬧,春花似錦、人聲如沸妈橄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽眷蚓。三九已至鼻种,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間沙热,已是汗流浹背叉钥。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留篙贸,地道東北人投队。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像爵川,于是被迫代替她去往敵國和親敷鸦。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,440評論 2 348

推薦閱讀更多精彩內(nèi)容

  • [root@redhat7 ~]# wget http://am1.php.net/get/php-7.1.2.t...
    醋留香閱讀 1,422評論 1 4
  • [toc] 在公司的網(wǎng)站上推薦使用 docker 容器來安裝環(huán)境寝贡,一個項目一個 docker 容器扒披。 、圃泡、 百度百...
    Mdvtrw閱讀 1,485評論 0 1
  • Nginx簡介 解決基于進程模型產(chǎn)生的C10K問題,請求時即使無狀態(tài)連接如web服務(wù)都無法達到并發(fā)響應(yīng)量級一萬的現(xiàn)...
    魏鎮(zhèn)坪閱讀 1,993評論 0 9
  • 一.nginx主配置文件目錄: 1.win-utf, koi-utf碟案,koi-win 這三個文件都是與編碼轉(zhuǎn)換映射...
    宇晨棒棒的閱讀 1,787評論 0 1
  • 真的好久沒有看過這樣的電視劇了。 從一個人生活到現(xiàn)在啊颇蜡,大概也過去七個月了吧价说,真的是,一直在湊活呢风秤,宿舍沒有廚房鳖目,...
    徐文沫閱讀 225評論 0 0