限定某個目錄禁止解析php,限制user_agent,php相關配置 原

11月20日任務

11.28 限定某個目錄禁止解析php
11.29 限制user_agent
11.30/11.31 php相關配置

1.限定某個目錄禁止解析php

  • 核心配置文件內容    
  • <Directory /data/wwwroot/www.123.com/upload>         php_admin_flag engine off    
  • </Directory>  
  • curl測試時直接返回了php源代碼,並未解析

示例一:

  • 如下配置一下

  • mkdir /data/wwwroot/www.123.com/upload 創建一個圖片上傳目錄/upload/
  • 重新加載一下

  • 測試

 

2.限制user_agent

  • user_agent可以理解爲瀏覽器標識  
  • 核心配置文件內容    
  • <IfModule mod_rewrite.c>        
  • RewriteEngine on        
  • RewriteCond %{HTTP_USER_AGENT}  .*curl.* [NC,OR]       
  • RewriteCond %{HTTP_USER_AGENT}  .*baidu.com.* [NC]  
  • RewriteRule  .*  -  [F]    
  • </IfModule>  
  • curl -A "123123" 指定user_agent

示例一:

  • 如下配置一下

  • 重新加載一下配置文件

  • 測試

  • curl -A "123123" 指定user_agent

 

 

3.PHP相關配置

  • 查看php配置文件位置  
  • /usr/local/php/bin/php -i|grep -i "loaded configuration file"  
  • date.timezone  定義它的時區
  • disable_functions  安全函數:eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close,phpinfo
  • error_log,log_errors,display_errors,error_reporting  日誌相關
  • open_basedir  安全相關
  • php_admin_value open_basedir "/data/wwwroot/111.com:/tmp/"

示例一:

  • 創建一個PHP文件

  • 在瀏覽器打開

  • 未加載,則去源碼包拷貝一份

  • 重新加載一下配置文件

  • 編輯一下

  • 添加內容,限制安全函數

  • 再加上phpinfo
  • 重新加載一下配置文件
  • 測試,再次訪問就打不開了

示例二:

  • 定義它的時區

示例三:日誌相關

  • 定義錯誤信息是否要顯示在瀏覽

  • 配置錯誤日誌

  • 定義日誌記錄的嚴謹度(級別)

  • 重新加載一下配置文件

  • 查看是否有生成這個文件

  • 查看屬組

  • 查看定義所在目錄屬組和寫權限是否是Apache(httpd)的

  • 也可以定義之前,先設定文件的權限

 

示例四:安全相關,限定分別隔離網站

  • 定義php.ini 這是針對所有網站的
  • 編輯該文件

  • 做如下配置

  • 重新加載配置文件,並測試一下

示例五:    

  • 編輯虛擬主機配置文件

  • 寫如下配置

  • 重新加載配置文件,並測試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章