Articles of apache 2.4

.htaccess“允许”和附加语句

我需要创build一些.htaccessconfiguration,我需要一些帮助。 我的Apache版本是2.4。 在Ubuntu上运行。 任务: 1)允许对经过authentication的用户和具有“白色”IP地址的用户使用test-uri-1; 2)仅允许经过authentication的用户访问test-uri-2和test-uri-3; 3)允许不受限制地访问所有其他URI; 4)只能在web项目的根目录下使用.htaccess文件。 我的第一个代码示例: SetEnvIf Request_URI ^test-uri-1$ require_auth=true SetEnvIf Request_URI ^test-uri-2$ require_auth=true SetEnvIf Request_URI ^test-uri-3$ require_auth=true SetEnvIf Request_URI ^test-uri-2$ require_auth_force=true SetEnvIf Request_URI ^test-uri-3$ require_auth_force=true AuthType Basic AuthName "Secure area" AuthUserFile /wwwroot/.htpasswd Order Deny,Allow Deny from all <If "-z reqenv('require_auth_force')"> Allow from 1.2.3.4 4.3.2.1 1.1.1.1 2.2.2.2 </If> Satisfy any Require valid-user […]

Apache Content-Security-Policy .htaccess标头失败

在Firefox浏览器控制台中报告错误(Ctrl + Shift + J): Content Security Policy: The page's settings blocked the loading of a resource at self (“default-src https://richardjaybrown.com”). Source: (function injected(eventName, injectedIn…. Firefox地址: https://richardjaybrown.com/ : https://richardjaybrown.com/ 的.htaccess: Header set Vary: Accept-Encoding Header append Content-Security-Policy "default-src 'self'" 注意:当网站地址在CSP中列出时也失败 环境: Apache 2.4.9 Centos 7.4 virtuzzo WHM / cPanel 68.0.12 Firefox 56.0.2(Windows 8.1,华硕笔记本)

如果授权标头存在,则禁用mod_cache

我的网站为login和注销的用户提供相同的页面。 来自login用户的请求具有授权标头。 我想使用Apache的mod_cache来为caching页面提供只注销用户。 从一个新的服务器开始,我可以用Authorization头做出请求,而不会被caching。 如果我以注销用户的身份发出请求,请求将被caching。 问题在于使用Authorization头的后续请求会返回caching的结果。 我如何禁用mod_cache的授权头的请求? 编辑:当我写这个,我想出了一个解决scheme似乎工作。 RequestHeader set Cache-Control max-age=300 "expr=-z %{HTTP:Authorization}" 这将在每个没有授权标头的请求上设置一个Cache-Control标头。 有趣的是,login请求的响应现在包含标题“Vary:Authorization”。 这是一个很好的解决scheme? 我应该使用清漆,而不是mod_cache? 谢谢

apache 2.4在debian上通过apt压缩

是否有像dotdeb.org这样的源代码提供Debian挤压的Apache 2.4包? 我正在寻找Apache模块。 我想从这个来源安装模块,然后通过apt的实际版本的Apache?

Apache RewriteCond:在正则expression式匹配组之间插入string到URI

编辑这个工程,需要使用%代替$捕获组: RewriteRule (.*) http://localhost:8081/%1/%{TIME_YEAR}1101%2 [P] 有一个困难的时间整理出来。 需要一个有条件的注入到特定的URI(用于代理到Jetty应用服务器)的datestring,条件是,如果没有8位数字的datestring已经存在,注入它。 我想到的黑客是: RewriteCond %{REQUEST_URI} ^/(foo|bar|baz)(.*) RewriteCond %2 !/(\d{8})(.*) RewriteRule (.*) http://localhost:8081$1/%{TIME_YEAR}1101$2 [P] 这在某种程度上是有效的,但不是全部,$ 2是空的,$ 1匹配整个URI。 基本上什么事情发生是/foo/2被重写到/foo/2/20121101 ,而我需要发生的是/foo/20121101/2 所以,假设$ 1匹配整个URI,那么我怎样才能使它匹配foo | bar | baz,留下$ 2作为URI余数,然后我可以在date中夹入? 另外,这是一个可怕的低效率的方法? 阿帕奇文档通常指示链接[OR]所以不知道直线正则expression式的路要走(当然更简洁)。 在Apache 2.4上,所以希望实际上可以从速度提升中受益(而不是在脚下自我拍摄) 谢谢

自定义端口上的Apache 2和phpmyadmin上的VirtualHost:您没有权限访问此服务器上的/ phpmyadmin

我googled了很多,但我没有find一个指导,build立一个虚拟主机上的自定义端口上的phpmyadmin。 Apache 2.4,这是我的httpd-vhosts.conf Listen 0.0.0.0:66 <VirtualHost *:66> Alias /phpmyadmin /usr/local/apache2/phpmyadmin <Directory "/usr/local/apache2/phpmyadmin"> Options FollowSymLinks DirectoryIndex index.php <IfModule mod_php5.c> AddType application/x-httpd-php .php php_flag magic_quotes_gpc Off php_flag track_vars On php_flag register_globals Off php_value include_path . </IfModule> </Directory> # Authorize for setup <Directory /usr/share/phpmyadmin/setup> <IfModule mod_authn_file.c> AuthType Basic AuthName "phpMyAdmin Setup" AuthUserFile /etc/phpmyadmin/htpasswd.setup </IfModule> Require valid-user </Directory> #Disallow […]

Apache 2.4子域设置失败

我一整天都在苦苦挣扎,我在这里也找不到答案。 请咨询如何设置适当的子域我需要。 我的Apacheconfiguration有2个域configuration(在相同的IP),为domain2.com我需要设置一个子域。 这是我到目前为止,但子域继续redirect到domain2.com(主站点)。 <VirtualHost 11.11.11.11:80> ServerName domain1.com ServerAlias domain1.com *.domain1.com DocumentRoot "C:/wwwmap/domain1.com" </VirtualHost> <VirtualHost 11.11.11.11:80> ServerName domain2.com ServerAlias domain2.com *.domain2.com DocumentRoot "C:/wwwmap/domain2.com" </VirtualHost> <VirtualHost 46.4.24.4:80> ServerName projects.domain2.com DocumentRoot "C:/wwwmap/projects" </VirtualHost> DNS条目是:CNAME domain2.com中的项目 尝试删除ServerAlias domain2.com * .domain2.com工作到目前为止,但然后domain2.comredirect到domain1.com 我究竟做错了什么?

aptitude如何确定要安装哪个版本的软件包/应用程序? 即Apache 2.2和2.4

所以我浪费了好几天的时间来处理一个在2012年2月修复的拙劣的Apache2错误。我不知道为什么我还在经历这个错误,直到我发现我的版本Apache2是2.2.x版本,甚至认为我构build了整个服务器从头Debian 6在2012年11月30日。由于某种原因aptitude -install apache2拉2.2.x而不是2.4.x. 我希望我已经知道不会承担能力将拉最新的稳定build设。 任何人都可以了解一下仓库是如何pipe理的,以及为什么aptitude会从旧的维护的基础架构而不是2.4.x的基础架构中抽取出来? 另外,我将如何具体地调整2.4.x的性能,以及如何帮助自己避免将来出现这样的问题?

尽pipe777,乘客抱怨Apache权限

我在Fedora 18上安装了Redmine。使用webrick进行testing时,安装工作正常,正如在官方的“HowTo”中所解释的。 现在我想用Passenger和Apache来托pipeRedmine。 我得到的是: 乘客错误#2尝试访问“/var/www/redmine/config/environment.rb”时发生错误:无法统计'/var/www/redmine/config/environment.rb':权限被拒绝(错误= 13) Apache对该文件没有读取权限。 请修复相关的文件权限。 在几次尝试解决问题之后,我把包含内容的整个/var/www/redmine目录的所有权交给了apache用户,并将权限recursion地更改为777.我向apache用户发送了su命令, environment.rb文件没有任何问题。 所以我觉得毕竟这不是一个权限问题,但是面对这个明确的错误信息,我不知道。 这里可能是什么问题,以及如何解决它的任何想法(最好是一个解决scheme,使我可以将权限更改回合理的价值)? 脚注 : 这可能与这个问题有关 。 我没有忘记更改权限后重新启动Apache。 我正在运行httpd版本2.4.4-2.fc18,Phusion Passenger版本4.0.4 Redmine版本2.3.1。

在debian上回滚到Apache 2.2

有没有办法在debian上用Apache 2.2replaceApache 2.4? 所有“apache2”软件包现在安装2.4。