2011-11-12 218 views
2

我的配置存在一些问题。我使用Nginx作为我的Apache服务器的反向代理。我的网站有.htaccess身份验证,但Nginx似乎并不理解它,所以我得到一个404错误。。使用nginx进行.htaccess身份验证

我在其他答案上看到了一些翻译,但它没有翻译这部分。

AuthUserFile /var/www/mywebsite/private/.htpassword 
AuthName "Acces Restreint" 
AuthType Basic 
Require valid-user 

顺便说一句,你对如何翻译这第二部分有任何想法吗?

php_value session.gc_maxlifetime 604800 

SetEnv APPLICATION_ENV development 

谢谢大家的帮助!

回答

6

为perfomance相关的问题,nginx by default does not look up per-directory .htaccess files,这是一个问题,如果你的主机不让你编辑web服务器配置。

,如果你可以编辑Web服务器配置(或把新的配置到conf.d目录) 只需添加这些行,更换/你/路径相应

location /your/path { 
    auth_basic   "Acces Restreint"; 
    auth_basic_user_file /var/www/mywebsite/private/.htpassword; 
} 

回答你的问题的第二部分,需要更多的信息你如何使用nginx使用PHP。 如果你是绑的FastCGI(如PHP-FPM),那么你可以使用这个方法来设置PHP的增值经销商:

fastcgi_param PHP_VALUE "session.gc_maxlifetime=604800"; 


env APPLICATION_ENV development; 
+0

感谢这个快速的解答。这就说得通了。幸运的是,我拥有所有root权限来编辑我的web服务器配置! PHP正在与Apache合作。 Nginx仅用作反向代理。 – MaximeBernard