摘要:與主要區別在于如何解釋后面的,這會使兩者分別以不同的方式將請求映射到服務器文件上。實例如果一個請求的是時,服務器將會返回服務器上的的文件。
Linux 部署nginx
環境: 百度云實例 CentOS / 7.5 x86_64 (64bit)
安裝依賴
yum install gcc
yum install pcre-devel
yum install zlib zlib-devel
yum install openssl openssl-devel
prce-devel 作用: nginx的rewrite偽靜態匹配規則用到正則,pcre就用來干這個。
zlib 是一個壓縮和解壓縮模塊
SSL是Secure Socket Layer(安全套接層協議)的縮寫,可以在Internet上提供秘密性傳輸
下載nginx tar包
// 創建一個文件夾 cd /usr/local mkdir nginx cd nginx // 下載 tar包 wget http://nginx.org/download/nginx-1.13.7.tar.gz tar -xvf nginx-1.13.7.tar.gz
安裝nginx
//進入nginx目錄 cd /usr/local/nginx/nginx-1.13.7 //使用默認配置 ./configure
//make make install make make install
安裝好后的目錄如下
conf 目錄下的 nginx.conf 是nginx的配置文件
sbin 目錄下 執行 ./nginx 啟動服務
一些常用命令
測試配置文件 /ningx/sbin/nginx -t
啟動命令 安裝路徑下的 /nginx/sbin/nginx
停止命令 安裝路徑下的 /nginx/sbin/nginx -s stop
重啟命令 安裝路徑下的 .nginx/sbin/nginx -s reload
查看進程命令 ps -ef | grep nginx
平滑重啟 kill -HUP Nginx主進程號
Nginx 映射本地目錄通過反向代理來做一個簡易的圖片服務器
大致步驟:
取消注釋開啟日志,便于出現問題排查
error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info;
修改 nginx/conf/nginx.conf, 存放圖片的目錄被我放在了 /root/pics
server { listen 80; server_name 182.61.41.64; #charset koi8-r; #access_log logs/host.access.log main; location ^~ /images/ { alias /root/pics/; index 1.txt; }
過程當中踩到的坑:
訪問資源出現403 forbidden,查看日志出現錯誤:
403 forbidden (13: Permission denied) Nginx 403 forbidden forbidden 403 Permission denied
原因是目錄權限不夠,解決辦法: 修改web目錄的讀寫權限,或者是把nginx的啟動用戶改成目錄的所屬用戶,重啟Nginx即可解決。
chmod -R 777 /data
chmod -R 777 /data/www/
root與alias主要區別——在于nginx如何解釋location后面的uri,這會使兩者分別以不同的方式將請求映射到服務器文件上。
root的處理結果是:root路徑+location路徑
alias的處理結果是:使用alias路徑替換location路徑
alias是一個目錄別名的定義,root則是最上層目錄的定義。
還有一個重要的區別是alias后面必須要用"/"結束,否則會找不到文件的,而root則可有可無。
//root實例: location ^~ /t/ { root /www/root/html/; } //如果一個請求的URI是/t/a.html時,web服務器將會返回服務器上的/www/root/html/t/a.html的文件。
//alias實例: location ^~ /t/ { alias /www/root/html/new_t/; } //如果一個請求的URI是/t/a.html時,web服務器將會返回服務器上的/www/root/html/new_t/a.html的文件。注意這里是new_t,因為alias會把location后面配置的路徑丟棄掉,把當前匹配到的目錄指向到指定的目錄。
使用alias時,目錄名后面一定要加"/"。
alias在使用正則匹配時,必須捕捉要匹配的內容并在指定的內容處使用。
alias只能位于location塊中。(root可以不放在location中)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/40160.html
摘要:提示,如果需要通過實現服務器自動化部署,推薦使用會更方便一些然后在目錄初始化本地倉庫并提交到這時候上已經有我提交的代碼了。再新建一個文件處理部署相關腳本,內容如下將新增的與兩個文件到服務器。 這篇文章將如何搭建hexo,以及如何通過git webhooks實現遠程vps的自動部署 這篇文章適合的條件: 簡單的用于個人博客、公司博客展示,hexo的定位是靜態博客,要實現動態服務器的功能...
摘要:本文章用于描述如何從零開始進行阿里云倉庫的搭建,以及過程中遇到的相關問題。涉及的內容包括,,,,。目標硬盤掛載阿里云額外購買的硬盤服務,需要僅掛載后才可以正常使用。域名代理免費代理的域名通過阿里云域名解析暴露到外網。 本文章用于描述如何從零開始進行阿里云倉庫的搭建,以及過程中遇到的相關問題。涉及的內容包括Docker,Nginx,Nexus,Gitlab,Https。 背景 需要搭建一...
閱讀 3571·2023-04-26 02:05
閱讀 2010·2021-11-19 11:30
閱讀 4218·2021-09-30 09:59
閱讀 3178·2021-09-10 10:51
閱讀 2610·2021-09-01 10:30
閱讀 1484·2021-08-11 11:20
閱讀 2619·2019-08-30 15:54
閱讀 568·2019-08-30 10:49