Nginx 编译,添加未编译安装模块ngx_cache_purge
- 官网下载nginx及第三方ngx_cache_purge 模块
http://wiki.nginx.org/Install
http://labs.frickle.com/nginx_ngx_cache_purge/ - 编译与安装
Blockquote
./configure \
–prefix=/usr/local/nginx-1.8.0 \
–sbin-path=/usr/sbin/nginx \
–conf-path=/etc/nginx/nginx.conf \
–error-log-path=/var/log/nginx/error.log \
–http-log-path=/var/log/nginx/access.log \
–pid-path=/var/run/nginx/nginx.pid \
–lock-path=/var/lock/nginx.lock \
–user=nginx \
–group=nginx \
–with-http_ssl_module \
–with-http_flv_module \
–with-http_stub_status_module \
–with-http_gzip_static_module \
–http-client-body-temp-path=/var/tmp/nginx/client/ \
–http-proxy-temp-path=/var/tmp/nginx/proxy/ \
–http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
–add-module=/apps/svr/ngx_cache_purge-2.3
<code><span>make</span> && <span>make</span> install</code>
3.为init.d 提供脚本
<code><span>#!/bin/sh </span><span># </span><span># nginx - this script starts and stops the nginx daemon </span><span># </span><span># chkconfig: - 85 15 </span><span># description: Nginx is an HTTP(S) server, HTTP(S) reverse \ </span><span># proxy and IMAP/POP3 proxy server </span><span># processname: nginx </span><span># config: /etc/nginx/nginx.conf </span><span># config: /etc/sysconfig/nginx </span><span># pidfile: /var/run/nginx.pid </span><span># Source function library. </span> . /etc/rc.d/init.d/functions <span># Source networking configuration. </span> . /etc/sysconfig/network <span># Check that networking is up. </span> [ <span>"<span>$NETWORKING</span>"</span> = <span>"no"</span> ] && <span>exit</span><span>0</span>nginx=<span>"/usr/sbin/nginx"</span>prog=$(basename <span>$nginx</span>) NGINX_C>"/etc/nginx/nginx.conf"[ <span>-f</span> /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx lockfile=/var/lock/subsys/nginx <span><span>make_dirs</span></span>() { <span># make required directories </span> user=`nginx -V <span>2</span>>&<span>1</span> | grep <span>"configure arguments:"</span> | sed <span>'s/[^*]*--user=\([^ ]*\).*/\1/g'</span> -` opti>$nginx -V <span>2</span>>&<span>1</span> | grep <span>'configure arguments:'</span>` <span>for</span> opt <span>in</span><span>$options</span>; <span>do</span><span>if</span> [ `<span>echo</span><span>$opt</span> | grep <span>'.*-temp-path'</span>` ]; <span>then</span> value=`<span>echo</span><span>$opt</span> | cut <span>-d</span><span>"="</span><span>-f</span><span>2</span>` <span>if</span> [ ! <span>-d</span><span>"<span>$value</span>"</span> ]; <span>then</span><span># echo "creating" $value </span> mkdir -p <span>$value</span> && chown -R <span>$user</span><span>$value</span><span>fi</span><span>fi</span><span>done</span>} <span><span>start</span></span>() { [ -x <span>$nginx</span> ] || <span>exit</span><span>5</span> [ <span>-f</span><span>$NGINX_CONF_FILE</span> ] || <span>exit</span><span>6</span> make_<span>dirs</span><span>echo</span> -n $<span>"Starting <span>$prog</span>: "</span> daemon <span>$nginx</span> -c <span>$NGINX_CONF_FILE</span> retval=$? <span>echo</span> [ <span>$retval</span><span>-eq</span><span>0</span> ] && touch <span>$lockfile</span><span>return</span><span>$retval</span>} <span><span>stop</span></span>() { <span>echo</span> -n $<span>"Stopping <span>$prog</span>: "</span> killproc <span>$prog</span> -QUIT retval=$? <span>echo</span> [ <span>$retval</span><span>-eq</span><span>0</span> ] && rm <span>-f</span><span>$lockfile</span><span>return</span><span>$retval</span>} <span><span>restart</span></span>() { configtest || <span>return</span> $? stop sleep <span>1</span> start } <span><span>reload</span></span>() { configtest || <span>return</span> $? <span>echo</span> -n $<span>"Reloading <span>$prog</span>: "</span> killproc <span>$nginx</span> -HUP RETVAL=$? <span>echo</span>} <span><span>force_reload</span></span>() { restart } <span><span>configtest</span></span>() { <span>$nginx</span> -t -c <span>$NGINX_CONF_FILE</span>} <span><span>rh_status</span></span>() { status <span>$prog</span>} <span><span>rh_status_q</span></span>() { rh_status >/dev/null <span>2</span>>&<span>1</span>} <span>case</span><span>"<span>$1</span>"</span><span>in</span> start) rh_status_q && <span>exit</span><span>0</span><span>$1</span> ;; stop) rh_status_q || <span>exit</span><span>0</span><span>$1</span> ;; restart|configtest) <span>$1</span> ;; reload) rh_status_q || <span>exit</span><span>7</span><span>$1</span> ;; force-reload) force_reload ;; status) rh_status ;; condrestart|try-restart) rh_status_q || <span>exit</span><span>0</span> ;; *) <span>echo</span> $<span>"Usage: <span>$0</span> {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"</span><span>exit</span><span>2</span><span>esac</span></code>
4.为脚本赋予权限:
<code><span>chmod</span> +<span>x</span> /etc/init.d/nginx</code>
5.开机启动
<code>chkconfig <span>--add nginx</span> chkconfig nginx <span><span>on</span></span> chkconfig nginx <span>--list </span></code>
6.配置nginx cache 和ngx_cache_purge,如果遇到404,注意proxy_cache_key 和proxy_cache_purge 的配置
<code><span> proxy_cache_path /data/nginx/cache levels=1:2 keys_z inactive=15d max_size=100g;</span><span> proxy_cache_key "$request_uri";</span><span> proxy_cache cache_one;</span><span> proxy_cache_valid 200 15d;</span><span> expires 15d; =============================================</span><span> #仅允许本地网络清理缓存</span><span> location ~ /purge(/.*) {</span><span> allow 106.2.214.50;</span><span> allow 127.0.0.1;</span><span> allow 192.168.5.0/24;</span><span> deny all;</span><span> proxy_cache_purge cache_one $1$is_args$args;</span><span> }</span></code>
版权声明:本文为博主原创文章,未经博主允许不得转载。
以上就介绍了Nginx 编译,添加未编译安装模块ngx_cache_purge,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

세션 고정 공격을 방지하는 효과적인 방법은 다음과 같습니다. 1. 사용자 로그인 한 후 세션 ID 재생; 2. 보안 세션 ID 생성 알고리즘을 사용하십시오. 3. 세션 시간 초과 메커니즘을 구현하십시오. 4. HTTPS를 사용한 세션 데이터를 암호화합니다. 이러한 조치는 세션 고정 공격에 직면 할 때 응용 프로그램이 파괴 할 수 없도록 할 수 있습니다.

서버 측 세션 스토리지가없는 토큰에 저장되는 토큰 기반 인증 시스템 인 JSONWEBTOKENS (JWT)를 사용하여 세션없는 인증 구현을 수행 할 수 있습니다. 1) JWT를 사용하여 토큰을 생성하고 검증하십시오. 2) HTTPS가 토큰이 가로 채지 못하도록하는 데 사용되도록, 3) 클라이언트 측의 토큰을 안전하게 저장, 4) 변조 방지를 방지하기 위해 서버 측의 토큰을 확인하기 위해 단기 접근 메커니즘 및 장기 상쾌한 토큰을 구현하십시오.

PHP 세션의 보안 위험에는 주로 세션 납치, 세션 고정, 세션 예측 및 세션 중독이 포함됩니다. 1. HTTPS를 사용하고 쿠키를 보호하여 세션 납치를 방지 할 수 있습니다. 2. 사용자가 로그인하기 전에 세션 ID를 재생하여 세션 고정을 피할 수 있습니다. 3. 세션 예측은 세션 ID의 무작위성과 예측 불가능 성을 보장해야합니다. 4. 세션 중독 데이터를 확인하고 필터링하여 세션 중독을 방지 할 수 있습니다.

PHP 세션을 파괴하려면 먼저 세션을 시작한 다음 데이터를 지우고 세션 파일을 파괴해야합니다. 1. 세션을 시작하려면 세션 _start ()를 사용하십시오. 2. Session_Unset ()을 사용하여 세션 데이터를 지우십시오. 3. 마지막으로 Session_Destroy ()를 사용하여 세션 파일을 파괴하여 데이터 보안 및 리소스 릴리스를 보장하십시오.

PHP의 기본 세션 저장 경로를 변경하는 방법은 무엇입니까? 다음 단계를 통해 달성 할 수 있습니다. session_save_path를 사용하십시오 ( '/var/www/sessions'); session_start (); PHP 스크립트에서 세션 저장 경로를 설정합니다. php.ini 파일에서 세션을 설정하여 세션 저장 경로를 전 세계적으로 변경하려면 세션을 설정하십시오. memcached 또는 redis를 사용하여 ini_set ( 'session.save_handler', 'memcached')과 같은 세션 데이터를 저장합니다. ini_set (

tomodifyDatainAphPessess, startSessionstession_start (), 그런 다음 $ _sessionToset, modify, orremovevariables.

배열은 PHP 세션에 저장할 수 있습니다. 1. 세션을 시작하고 session_start ()를 사용하십시오. 2. 배열을 만들고 $ _session에 저장하십시오. 3. $ _session을 통해 배열을 검색하십시오. 4. 세션 데이터를 최적화하여 성능을 향상시킵니다.

PHP 세션 쓰레기 수집은 만료 된 세션 데이터를 정리하기위한 확률 메커니즘을 통해 트리거됩니다. 1) 구성 파일에서 트리거 확률 및 세션 수명주기를 설정합니다. 2) CRON 작업을 사용하여 고재 응용 프로그램을 최적화 할 수 있습니다. 3) 데이터 손실을 피하기 위해 쓰레기 수집 빈도 및 성능의 균형을 맞춰야합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기
