CentOS 基本操作

web服務(wù) - Apache

安裝

安裝:$ yum install httpd (不同操作系統(tǒng)名字不一樣)
啟動(dòng):$ service httpd start
停止:$ service httpd stop

  • 查詢進(jìn)程是否存在:$ ps -ef | grep httpd
  • 默認(rèn)開(kāi)啟80端口,查看服務(wù)狀態(tài):$ netstat -anpl | grep 'http'
    表示已經(jīng)在監(jiān)聽(tīng)80端口
虛擬主機(jī)(一個(gè)服務(wù)器配置多個(gè)站點(diǎn),綁定多個(gè)域名)

/etc/httpd下的文件功能:conf 配置文件;conf.modules.d 配置模塊文件的配置文件;modules 模塊。
cdconf,打開(kāi)httpd.conf

配置站點(diǎn)的默認(rèn)根目錄

直接vi 用 /virtual 搜索,在該地方配置:
配置虛擬主機(jī)

配置完保存后,$ service httpd restart重啟服務(wù)
$ mkdir -p /data/www 創(chuàng)建一個(gè)文件目錄
$ ll /data/ 查看目錄權(quán)限,如果其它賬號(hào)操作 root 賬號(hào)權(quán)限的目錄則無(wú)法操作

查看目錄權(quán)限

更改一個(gè)目錄所屬的用戶(一般目錄權(quán)限不夠時(shí)更改,root賬號(hào)操作不用):
$ sudo chown -R imooc:imooc /data
修改本地host模擬一個(gè)域名訪問(wèn):
$ sudo vim /etc/hosts

改host

查看error.log 文件,表示這個(gè)目錄無(wú)法訪問(wèn)
查看error.log

需要添加<Directory>配置,重啟服務(wù)
重啟服務(wù)

如果還是不行就在服務(wù)器執(zhí)行下 $ sudo setenforce 0
1是強(qiáng)制模式,0是寬容模式,一般0是臨時(shí)關(guān)閉,如果要每次重啟都要關(guān)閉,需要 $ sudo vim /etc/selinux/config,禁用掉即可。
禁用

配置多個(gè)虛擬主機(jī)事例

偽靜態(tài)

將php等動(dòng)態(tài)語(yǔ)言網(wǎng)頁(yè)偽靜態(tài)成html,利于SEO
/etc/httpd/modules下(所有模塊的類),該文件是偽靜態(tài)模塊的重寫(xiě)規(guī)則:

偽靜態(tài)

/etc/httpd/conf.modules.d模塊的配置文件
開(kāi)啟偽靜態(tài)步驟:1、將mod_rewrite.so加載到系統(tǒng)中 2、打開(kāi)配置偽靜態(tài)規(guī)則
1、在/etc/httpd/httpd.conf中,搜索/LoadModule,修改配置加載一個(gè)新的modules,重啟服務(wù)。
開(kāi)啟偽靜態(tài)

2、一個(gè)簡(jiǎn)單的偽靜態(tài)規(guī)則示例:將所有http的請(qǐng)求轉(zhuǎn)換到index.html當(dāng)中,重啟服務(wù)(一般php的MVC框架配置為將所有的請(qǐng)求轉(zhuǎn)發(fā)到index.php即可)。
偽靜態(tài)規(guī)則

web服務(wù) - Nginx

安裝

$ yum install nginx
在centOS中比較特殊,需要添加Nginx yum資源庫(kù):
sudo rpm -Uvh http://[nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm](http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm)
sudo yum install -y nginx
啟動(dòng):$ service nginx start
停止:$ service nginx stop
重載:$ service ngnix reload

restart 會(huì)殺掉進(jìn)程重新啟動(dòng)進(jìn)程,如果對(duì)外提供服務(wù)時(shí),用戶可能無(wú)法訪問(wèn),但reload 命令會(huì)無(wú)縫的重啟遷移,建議使用reload

配置虛擬主機(jī)

/etc/nginx下,nginx.conf 是配置文件,里面可能有conf.d重復(fù)的配置信息注意刪除。

代表加載conf.d下的文件

cd到conf.d中,有一個(gè)默認(rèn)的default.conf文件(也可能沒(méi)有,配置信息已經(jīng)在nginx.conf中了)
配置的默認(rèn)根目錄

$ cp default.conf imooc.conf , 新建一個(gè)imooc的虛擬主機(jī)配置,重載服務(wù)
新建一個(gè)虛擬主機(jī)配置

監(jiān)聽(tīng)多端口、多域名訪問(wèn)同一個(gè)服務(wù):
監(jiān)聽(tīng)多端口

偽靜態(tài)

將所有http的請(qǐng)求都轉(zhuǎn)發(fā)到index.html當(dāng)中去。

偽靜態(tài)

日志格式配置:

$ sudo vim nginx.conf

日志格式配置

日志格式配置

Log 的格式:IP - 遠(yuǎn)程用戶 - 時(shí)間 - 請(qǐng)求 - 狀態(tài)值 - UA信息

日志文件存放地址配置

重新定義一種日志格式

可以查文檔看更多 nginx log_format 日志格式配置

按虛擬主機(jī)區(qū)分配置日志文件$ sudo vim conf.d/imooc.conf使用 imooc的log配置,輸出日志到指定目錄。

按虛擬主機(jī)區(qū)分配置日志文件

其它日志:error.log 錯(cuò)誤日志

反向代理

$ sudo vim imooc.conf
將所有http://www.imooc.test/ www.imooc3.test 的請(qǐng)求轉(zhuǎn)發(fā)到118.89.106.129:80,由于服務(wù)器配置了只解析指定域名的請(qǐng)求,所以需要加入proxy_set_header Host www.54php.cn 配置即可將所有www.imooc.test請(qǐng)求反向代理到 www.54php.cn(后端服務(wù)器被隱藏)

反向代理

負(fù)載均衡

增加一個(gè)upstream server配置即可,默認(rèn)輪流請(qǐng)求轉(zhuǎn)發(fā)到這兩臺(tái)服務(wù)器

負(fù)載均衡

配置轉(zhuǎn)發(fā)的權(quán)重為5:1

nginx 調(diào)試

調(diào)試查看用戶是用哪個(gè)域名來(lái)訪問(wèn)的,如不加頭部信息會(huì)直接下載返回信息文件。


單行調(diào)試
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容