天天看點

Linux系統下Apache日志檔案設定、更改預設網站目錄、防止php木馬跨站設定、禁止空主機頭

引言:

Apache預設安裝下,日志記錄隻有一個檔案,時間久了之後,這個檔案會變的很大,管理者要想檢視分析日志,光打開日志就要花費很長時間,甚至還會影響伺服器運作。

下面設定apache讓伺服器每天單獨生成一個日志檔案,這樣管理、分析日志會友善很多。

#####################################################################################

vi /etc/httpd/conf/httpd.conf  #編輯檔案

#ErrorLog logs/error_log  #注釋此行,添加下面這行

ErrorLog "|rotatelogs /var/log/httpd/error_log%Y%m%d.log 86400 480"  #每天單獨生成一個日志檔案

#CustomLog logs/access_log common  #注釋此行,添加下面這行

CustomLog "|rotatelogs /var/log/httpd/access_log%Y%m%d.log 86400 480" common  #每天單獨生成一個日志檔案

######################################################################################

Tips:如果想禁止Apache日志檔案,可以設定如下

ErrorLog /dev/null  #禁用錯誤日志

CustomLog /dev/null common  #禁用通路日志

--------------------------------------------------------------------------------

CentOS Linux系統下更改Apache預設網站目錄

Apache預設的網站目錄是在/var/www/html,我們現在要把網站目錄更改到/home/wwwroot/web1/htdocs,操作如下

準備工作:

建立目錄:

cd /home

mkdir wwwroot

cd wwwroot

mkdir web1

cd web1

mkdir htdocs

touch index.php

操作步驟:

1、vi /etc/httpd/conf/httpd.conf

  找到 DocumentRoot"/var/www/html"這一段    #apache的根目錄

  把/var/www/html這個目錄改為/home/wwwroot/web1/htdocs

  再找到 <Directory "/var/www/html">  #定義apache /var/www/html這個區域

  把/var/www/html改成/home/wwwroot/web1/htdocs

  這樣我們就把apahce的預設路徑改掉了

  service httpd restart  #重新開機Apache伺服器

2、通路localhost的時候,會發現通路拒絕,這是為什麼呢?

主要是因為你的/home/wwwroot/web1/htdocs的權限是750,apache這個使用者沒有權限通路,你需要更改掉權限,可以這樣改

chmod -R 755 /home/wwwroot/web1/htdocs

然後去通路 發現正常運作了(apache的使用者:apache 運作apache的組:apache)

至此,Apache預設網站目錄更改成功。

CentOS Linux系統下Apache防止php木馬跨站設定

在Apache伺服器中,切忌一定要在虛拟主機配置檔案中添加以下代碼,否則PHP木馬腳本可以浏覽你伺服器上的任意檔案,這意味着你的伺服器很快會被攻破。

代碼如下:

php_admin_value open_basedir "/usr/local/apache/htdocs/www/:/tmp/"

注意:把/usr/local/apache/htdocs/www/替換成你自己的網站目錄

例如:

編輯虛拟主機配置檔案

vi /etc/httpd/conf.d/vhost.conf

在你的網站配置中添加下面的代碼

<VirtualHost *:80>

</VirtualHost>

注意:  

因為/etc/httpd/conf.d/vhost.conf中設定了open_basedir之後, 虛拟使用者就不會再自動繼承php.ini

中的open_basedir設定值了,這就難以達到靈活的配置措施, 是以建議您不要在/etc/httpd/conf.d/vhost.conf

中設定此項限制。

例如,可以在php.ini中設定open_basedir = .:/tmp/

這個設定表示允許通路目前目錄(即PHP腳本檔案所在之目錄)和/tmp/目錄,有效防止php木馬跨站運作。

Linux系統下禁止apache空主機頭

引言:為了防止域名解析惡意指向,我們需要禁止apache預設的空主機頭,操作如下

vi /etc/httpd/conf/httpd.conf    

#編輯配置檔案,在你的站點配置之前再增加一個站點(紅色字型部分是我們要增加的,藍色字型部分代表你正在使用的站點配置)

NameVirtualHost * 

    [email protected]

    DocumentRoot /error

    ServerName abc.com

    DocumentRoot "你的站點路徑"

    ServerName yourWebsite.com

    ServerAlias *.yourWebsite.com

推薦閱讀:

本文轉自奔跑在路上部落格51CTO部落格,原文連結http://blog.51cto.com/qiangsh/1587576如需轉載請自行聯系原作者

qianghong000