2017-09-15 13 views
4

Stack Overflow에 대해 너무 많은 질문을하지 않으려 고 노력했지만 Apache2 서버에서 mod_pagespeed를 2 일 동안 사용하도록 설정하려고했습니다. 제 머리. mod_pagespeed와 mod_pagespeed_ap24를 설치했는데 Apache2의 mod_pagespeed_ap24 만 필요합니다. 나는 성공적으로 서버를 다시 시작 Mod_pagespeed가 사용됩니다. FileCachePath가 비어서는 안됩니다 :

LoadModule pagespeed_module modules/mod_pagespeed_ap24.so 

에 모듈을로드 /apache2/conf/httpd.conf 아파치의 구성을 편집 할 수 있지만 502 불량 게이트웨이, 그리고 여러 시도

[mod_pagespeed 1.12.34.2-0 @27107] mod_pagespeed is enabled. FileCachePath must not be empty: define_name=(null) defne_line_number=0 server_hostname=web551.webfaction.com port=0 

이 오류가 리눅스에서 mod_pagespeed의 config 파일을 편집하는 시간은 있지만, 아무 것도 효과가 없습니다. 그래서 대신에 nginix 서버 대신 Apache 서버를 통해 미디어를 제공하기 위해 Webfaction의 정적/php/cgi에 대한 심볼릭 링크를 만들었습니다. 따라서 .htaccess 파일을 사용하여 Apache 서버를 구성 할 수있었습니다. 나는 아직도 문제를 얻고있다.

htaccess로 파일

Options +FollowSymLinks 
<IfModule mod_expires.c> 
    ExpiresActive On 
    ExpiresByType image/jpg "access 1 year" 
    ExpiresByType image/jpeg "access 1 year" 
    ExpiresByType image/gif "access 1 year" 
    ExpiresByType image/png "access 1 year" 
    ExpiresByType text/css "access 1 month" 
    ExpiresByType text/html "access 1 month" 
    ExpiresByType application/pdf "access 1 month" 
    ExpiresByType text/x-javascript "access 1 month" 
    ExpiresByType application/x-shockwave-flash "access 1 month" 
    ExpiresByType image/x-icon "access 1 year" 
    ExpiresDefault "access 1 month" 

</IfModule> 



#Begin gzip and deflate 
<IfModule mod_deflate.c> 
    AddOutputFilterByType DEFLATE text/html text/css application/x-javascript text/plain text/xml image/x-icon 
</IfModule> 

<IfModule mod_pagespeed_ap24.c> 
    ModPagespeed on 
    ModPagespeedFileCachePath "/home/doc4design/var/cache/mod_pagespeed" 
    ModPagespeedEnableFilters rewrite_css,combine_css 
    ModPagespeedEnableFilters recompress_images 
    ModPagespeedEnableFilters convert_png_to_jpeg,convert_jpeg_to_webp 
    ModPagespeedEnableFilters collapse_whitespace,remove_comments 
</IfModule> 

아파치의 httpd.conf

ServerRoot "/home/doc4design/webapps/django_2016/apache2" 

LoadModule authz_core_module modules/mod_authz_core.so 
LoadModule dir_module  modules/mod_dir.so 
LoadModule env_module  modules/mod_env.so 
LoadModule log_config_module modules/mod_log_config.so 
LoadModule mime_module  modules/mod_mime.so 
LoadModule rewrite_module modules/mod_rewrite.so 
LoadModule setenvif_module modules/mod_setenvif.so 
LoadModule wsgi_module  modules/mod_wsgi.so 
LoadModule unixd_module  modules/mod_unixd.so 
LoadModule pagespeed_module modules/mod_pagespeed_ap24.so 

LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined 
CustomLog /home/doc4design/logs/user/access_django_2016.log combined 
ErrorLog /home/doc4design/logs/user/error_django_2016.log 

Listen 30651 
KeepAlive Off 
SetEnvIf X-Forwarded-SSL on HTTPS=1 
ServerLimit 1 
StartServers 1 
MaxRequestWorkers 5 
MinSpareThreads 1 
MaxSpareThreads 3 
ThreadsPerChild 5 

WSGIDaemonProcess django_2016 processes=2 threads=12 maximum-requests=100 python-path=/home/doc4design/webapps/django_2016:/home/doc4design/webapps/django_2016/doc4_2016:/home/doc4design/webapps/django_2$ 
WSGIProcessGroup django_2016 
WSGIRestrictEmbedded On 
WSGILazyInitialization On 
WSGIScriptAlias//home/doc4design/webapps/django_2016/doc4_2016/webapp/wsgi.py 
+0

'deb' 또는 소스를 통해 설치 했습니까? 'Mod_Pagespeed'를 배포 할 때'deb'을 설치하고'sudo a2enmod pagespeed'를 사용했습니다. Mod pagespeed는 자동으로 conf 파일을'mods-available' 파일에 넣습니다. 그래서'a2enmod '가 쉽게 가능합니다. 'FileCachePath' 매개 변수에 대한 파일 경로 (폴더 자체)가 있습니까? –

+1

https://serverfault.com보다는 여기에 묻는 것이 더 나을 수도 있습니다. 정확히 말하면 프로그래밍 관련 질문이 아닙니다. – Fraser

답변

2

당신은 확실히 /home/doc4design/var/cache/mod_pagespeed이 존재하는 경로 있습니까? 그렇다면 Apache가 경로에 액세스 할 수 있습니까?

경로가 존재하는지 확인하고 여기에 www-data 또는 사용자 아파치가 실행중인 권한을 부여하십시오.

+2

안녕하세요 프레이저, 그게 문제가되었습니다. 아파치 .htaccess 파일을 FileCachePath 설정하려고했지만 잘못된 서버를 구성하려고했습니다. 내 호스팅 제공 업체 인 Webfaction은 자체 Nginix 및 Apache2.4 서버를 사용하여 앱, 미디어 및 정적 자산을 제공합니다. 내 Apache2 디렉토리에있는 내 httpd.conf 파일의 경로를 직접 설정함으로써 문제가 해결되었습니다. – JBT