Articles of apache 2.2

Django将URL重写为浏览器中的IP地址 – 为什么?

我使用django,nginx和apache。 当我通过一个URL(例如http://www.foo.com/ )访问我的网站时,我的浏览器地址中显示的是pipe理员追加的IP地址(例如http://123.45.67.890/admin/ )。 当我通过IP访问网站时,django的urls.py会按照预期redirect(例如http://123.45.67.890/ – > http://123.45.67.890/accounts/login/?next=/ ) 我希望名称URL的行为与IP相同。 也就是说,如果URL转到新的视图,则浏览器地址中的主机应该保持不变,而不会更改为IP地址。 我应该在哪里寻找解决这个问题? 我的文件: ; cpa.com (apache) NameVirtualHost *:8080 <VirtualHost *:8080> AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/htm DocumentRoot /path/to/root ServerName www.foo.com <IfModule mod_rpaf.c> RPAFenable On RPAFsethostname On RPAFproxy_ips 127.0.0.1 </IfModule> <Directory /public/static> AllowOverride […]

Apache / SSL:(70014)find文件结尾:SSLinputfilter读取失败

在漫长的周末中进行升级是一个明智之举……现在我被困住了。 服务器正在吐出这个错误(loglevel信息):“(70014)find的文件结尾:SSLinputfilter读取失败”当使用Microsoft API从Web服务器检索数据。 如果我使用cURL绑定,一切都很好。 麻烦的是,大多数人都有前者。 有谁知道什么“(70014)文件结尾find:SSLinputfilter读取失败”,以及如何解决它? …快!

Apache / 2.2.20(Ubuntu 11.10)gzip压缩不能在php页面上工作,内容被分块

我遇到了一个新的生产服务器,我转移项目的问题。 PHP应用程序的HTML输出没有被Apache mod_deflate模块压缩。 其他资源,比如样式表和JavaScript文件,甚至包含与PHP输出相同Content-type(text / html)的html页面,都被压缩了! 这些项目在.htaccess中使用以下规则(来自HTML5样板): <IfModule mod_deflate.c> #Force deflate for mangled headers developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping/ <IfModule mod_setenvif.c> <IfModule mod_headers.c> SetEnvIfNoCase ^(Accept-EncodXng | X-cept-Encoding | X {15} |〜{15} | – {15})$ ^((gzip | deflate)\ s *,?\ s *)+ | [X〜 – ] {4,13} $ HAVE_Accept-Encoding RequestHeader追加Accept-Encoding“gzip,deflate”env = HAVE_Accept-Encoding </ IfModule>configuration </ IfModule>configuration #HTML,TXT,CSS,JavaScript,JSON,XML,HTC: <IfModule filter_module> FilterDeclare […]

在EL6.1下,apache / httpd响应比EL5.6(CentOS)慢

我已经阅读了RHEL 6和RHEL 5之间性能差异的其他线索,但没有一个与我的匹配。 我的问题performance为每个请求的平均响应时间(20毫秒)稍慢。 我有大约10个与CentOS 6.1和CentOS 5.6相同硬件规格的服务器。 这个问题在整个团队中是一致的。 我用Passenger运行Ruby on Rails。 Apacheconfiguration是相同的(从相同的SVN回购签出) Ruby和Passenger是相同的版本。 应用程序是相同的,正在服务的交通轮循。 mod_worker 服务器状态的一个有趣线索:CentOS 6.1服务器在“阅读请求”状态下有20-40个线程,而CentOS 5.6服务器的数量在1个左右。我正在绘制这个图表,以便我可以看到这个趋势。 我也有很多更新的机器,运行速度更快,运行的是CentOS 6.1。 在响应时间,他们把所有的旧机器都掸掉了,但是我可以看到它们在“读取请求”状态下也有稳定的20-40个线程。 这让我相信如果我能弄清楚是什么阻止了这些请求,我可以缩短他们的反应时间。 我的直觉告诉我,我需要调整一些在sysctl中的networking设置,但我还没有弄明白。

适当的Passenger + Apache权限修复错误“没有这样的文件或目录 – config / environment.rb”

我有一个乘客不能启动的问题,因为乘客声称:没有这样的文件或目录 – config / environment.rb显然是一个普遍的问题。 我已经searchnetworking的高低,这似乎是一个权限相关的问题。 这是我的理解,乘客作为config.ru和config / environment.rb文件的所有者运行。 在我的情况下,这个所有者是“pipe理员”。 我正在运行pipe理员用户的主目录中的应用程序根目录。 所以我相信我有正确的权限设置使用: sudo chown -R admin:admin /home/admin/www和sudo chmod -R 755 /home/admin/www 应用程序根目录位于:/ home / admin / www / app 这是我的虚拟服务器configuration文件: <VirtualHost *:80> ServerName track.example.com DocumentRoot /home/admin/www/app/current/public <Directory /home/admin/www/app/current/public> Options FollowSymLinks AllowOverride none Order allow,deny Allow from all </Directory> PassengerResolveSymlinksInDocumentRoot on RailsBaseURI / PassengerAppRoot /home/admin/www/app RailsEnv […]

让AWStats在Ubuntu 12.04中工作

我是新来的Apache,我试图在我的Ubuntu 12.04服务器上设置AWStats。 我在Ubuntu文档中遵循了指南 。 我根据说明进行设置,awstats能够成功从apache日志生成初始统计信息。 我把链接放在默认的虚拟主机文件中。 但是当我尝试运行http://server-ip-address:8080/awstats/awstats.pl ,我得到: Error: SiteDomain parameter not defined in your config/domain file. You must edit it for using this version of AWStats. Setup ('/etc/awstats/awstats.conf' file, web server or permissions) may be wrong. Check config file, permissions and AWStats documentation (in 'docs' directory). 这是我的/etc/apache2/sites-available/default文件: <VirtualHost *:8080> ServerAdmin webmaster@localhost DocumentRoot /home/saad/www <Directory […]

Apache上的ModSecurity(Debian Wheezy),身份validation日志logging

我是ModSecurity的新手,在服务器上工作得很好,但我想控制它logging事物的方式。 例如,因为我正在解决我的网站,以便白名单或更正php编码问题,以便我可以有一个干净的modsec_audit.log当一切正常工作,我碰到以下内容。 每当我通过basic或者htdigestauthentication请求一个受密码保护的url时,ModSecurity将它logging在modsec_audit.log ,如下所示: htdigestauthentication: –838e7b1b-A– [17/Nov/2013:19:13:51 +0200] Uoj5T8CoAWQAABfMVE0AAAAA xxx.xxx.xxx.xxx XXXXX xxx.xxx.xxx.xxx XXXXX –838e7b1b-B– GET / HTTP/1.1 Host: XXX.XXX.com:XXXX User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:25.0) Gecko/20100101 Firefox/25.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip, deflate DNT: 1 Connection: keep-alive –838e7b1b-F– HTTP/1.1 401 Authorization Required WWW-Authenticate: Digest realm="Members Only", nonce="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", algorithm=MD5, qop="auth" Vary: Accept-Encoding Content-Encoding: gzip […]

根据客户端证书设置标题

我有Apache作为内部服务器的反向代理运行。 用户点击代理需要使用客户端证书。 在内部服务器上,有一个Web应用程序可以使用HTTP标头来validation用户。 我希望代理提供基于客户端证书的头。 标题值是用户的ID。 理想情况下,我会有一个文本文件映射用户ID证书。 据我所知,我需要RewriteMap而不是头文件。 # Somehow lookup USERID given SSL_CLIENT_S_DN RequestHeader set X-User-ID %{USERID} 我想避免一大堆SetEnvIf需要重新启动服务器来更改,例如: SetEnvIf SSL_CLIENT_S_DN [User 1's SSL_CLIENT_S_DN] USERID=12 SetEnvIf SSL_CLIENT_S_DN [User 2's SSL_CLIENT_S_DN] USERID=34 SetEnvIf SSL_CLIENT_S_DN [User 3's SSL_CLIENT_S_DN] USERID=56 … 有没有一种好的方法可以避免用户需要进行两次实质性的validation?

请求失败:读取标题时出错

最近我把我的服务器从一个提供者移到另一个提供者,并开始在apache错误日志中得到这个消息: “请求失败:读取头文件时出错” 从错误和相应的访问Apache日志示例: ApacheServer$ cat error_log ApacheServer [Tue Jan 20 11:07:44 2015] [error] [client xxxx] request failed: error reading the headers ApacheServer$ cat access_log xxxx – – [20/Jan/2015:11:06:44 +0200] "GET SomeRandomRequest HTTP/1.1" 400 226 "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.3; WOW64; Trident/7.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; […]

加载Apache头文件模块,但不能在htaccess中设置头文件

我有Apache 2.2.29(Unix)设置和运行在我的新开发机器(MAC)。 我正在尝试为一个API项目设置CORS头文件 – 我已经做了很多次了。 该项目的htaccess文件如下所示: <IfModule mod_headers.c> Header set Access-Control-Allow-Origin "*" Header set Access-Control-Allow-Methods "POST, GET, PUT, OPTIONS, PATCH, DELETE" Header set Access-Control-Allow-Headers "X-Accept-Charset,X-Accept,Content-Type" ServerSignature Off </IfModule> <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /cms/public RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !^/(favicon\.ico|apple-touch-icon.*\.png)$ [NC] RewriteRule (.+) index.php?p=$1 [QSA,L] </IfModule> 和头文件模块加载我的conf: LoadModule headers_module libexec/mod_headers.so 该模块文件存在于apache conf中显示的位置,并且被加载OK: […]