首頁 > php教程 > php手册 > 主體

nginx伺服器設定多網域

WBOY
發布: 2016-08-30 09:21:15
原創
1343 人瀏覽過

nginx伺服器支援配置多站點,我們可以透過配置子網域讓你的一個網域下放置多個項目。

那麼如何實現這個過程呢?

網路上的許多方案,有些寫的過於繁雜,有些則是配置有誤,或者說,有些配置項是要根據自己的主機實際環境來配置的。

一.假設你的專案路徑是放在 /home/wwwroot/路徑下,nginx的安裝路徑是 /usr/local/nginx/ 目錄下

二.安裝好nginx都會有預設的設定檔。檔案路徑為/usr/local/nginx/conf/nginx.conf

三.現在你需要將你的項目映射到多個網域下。首先查看nginx.conf檔案最後一行,它表示include了目前vhost目錄下的所有.conf檔。此時,如果沒有vhost檔案我們可以建立這個資料夾。

<span>                access_log  /home/wwwlogs/<span>access.log  access;
        }
include vhost/*.conf;</span></span>
登入後複製

四.然後在vhost目錄下新建一個你需要新增的網域設定文件,命名自訂。然後我們可以往裡面添加內容。下面可以來講解一下幾個具體的配置項目(簡單的略過)。

1.index index.html  index.php 表示默认的定位的文件,假如直接访问域名,会定位到index.html或者index.php文件<br>2.fastcgi_pass  这个命令是指定将http代理到哪个fastcgi服务端接口<br>3.fastcgi_index  该指令设置的文件会被附加到URI的后面并保存在变量$fastcgi_script_name中<br>4.fastcgi_param SCRIPT_FILENAME   脚本文件请求的路径 <br>5.include  fastcgi_params;  包含fastcgi_params中的所有参数
登入後複製
<span>server{
        listen 80<span>;
        server_name www.news.com;
        root /home/wwwroot/news/<span>;
        location /<span>{
                index index.html  index.php;
<span>        }
        location ~<span> \.php$ {
            fastcgi_pass   127.0.0.1:9000<span>;<br>        #fastcgi_pass   unix:/tmp/fastcgi.socket;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME      $document_root$fastcgi_script_name;
            include    <span>fastcgi_params;

        }
}</span></span></span></span></span></span></span></span>
登入後複製

五.假如我們是在本機測試,設定了虛擬網域之後,我們如何在自己的linux主機上存取呢?

1.我們可以透過修改/etc/hosts來讓網域名稱對應到自己的主機上。例如我之前定義的www.news.com

2.我們打開hosts文件,在後面增加 127.0.0.1 www.news.com

3.假如修改hosts檔案還是無法存取。那說明還需要修改network檔案。開啟/etc/sysconfig/network文件,修改為 NETWORKING=yes,然後service network restart,重新啟動network 

 

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!