这是我的基本设置: 路由器转发端口的80和443运行Apache的Ubuntu服务器14.04。 很好用。 在Ubuntu服务器上运行多个虚拟机(QEMU / KVM)。 虚拟机处于桥接模式,所以它们有自己的内部IP地址。 我想将子域的所有stream量redirect到VM的处理。 例如: sub1.example.com – > VM1 sub2.example.com – > VM2 sub3.example.com – > VM3 我想这个转发SSL请求到虚拟机进行处理。 目前我得到redirect循环或SSL错误,无论我尝试。 我可以得到非SSL的工作,但我不知道如何设置Ubuntu服务器来处理和转发HTTP和HTTPS的请求。 编辑: 这是我目前的虚拟主机文件: <VirtualHost *:80> ServerName sub1.example.com ProxyPreserveHost On ProxyPass / http://192.168.1.78/ ProxyPassReverse / http://192.168.1.78/ </VirtualHost> <VirtualHost *:443> ServerName sub1.exmaple.com ProxyPreserveHost On ProxyPass / http://192.168.1.78/ ProxyPassReverse / http://192.168.1.78/ </VirtualHost> 我知道这是不正确的,但不知道该怎么做。 主服务器将收到来自http://sub1.example.com和https://sub1.example.com的请求 编辑2: […]
我在CentOS 7上有一个简单的Apache,mod_php服务器。我已经禁用了php.ini中的exec函数,但是我需要在一个Vhost上使用它。 现在显然我知道我不能使用多个php.ini文件,我知道我不能更改php.ini文件之外的disable_functions设置,所以我尝试了其他的想法。 显然,我的第一个select是使用fastcgi或者suPHP等,但是如果不打断服务器,我不能让它们工作,尽pipe我最终可以使它们工作,但我宁愿find一个不同的解决scheme,并坚持简单的mod_php。 我的第二个想法是安装Nginx和php-fpm并让它在另一个端口上侦听,但是尽pipe将disable_functions设置为空值,它仍然读取php.ini文件,从而禁用了php_exec函数。 那么有没有一个相对简单的方法来实现这一点,而不必重置与FastCGI的Apache?
我正在使用Apache 2.4,我想closures服务器签名,以便在应用程序中出现错误时不会打印服务器的所有信息。 所以,我添加下面的代码行 ServerSignature off ServerTokens Prod 我在httpd.conf文件的最后添加了上面的行。 即使那么当我在应用程序中得到错误,我可以看到页面上的服务器信息。 更新:请查看附件截图中添加的configuration文件的结尾,也是错误 任何解决scheme或build议都是受欢迎的。 谢谢 没有find资源时的Apache服务器信息 在httpd中configuration
我正在发布一个WordPress的博客。 我说“从事出版”,因为当我说“这很好,我希望它展示我的网站”时, WordPress似乎停止了工作。 WordPress的版本是4.4.0; Apache是为Debian编译的2.4.10,而uname -a给出了“Linux localhost 4.1.5-x86_64-linode61#7 SMP Mon Aug 24 13:46:31 EDT 2015 x86_64 GNU / Linux” 有几个问题已经涉及到。 在线论坛中的一个build议是重命名或删除安装的.htaccess和plugins目录; 我做到了,但没有更好的。 有三个基本的行为: 显示预期内容而不应用任何非默认样式。 其中一部分可能是HTTPS与HTTP传输问题,这是鸡和鸡蛋:除非我手动篡改数据库(我最终做了,它没有帮助),我需要访问的东西在WP – 内容,但我现在已经不再需要这个function了,因为应该满足我需求的wp内容已经完全closures了。 ( 或者换句话说,解决HTTPS页面要求通过HTTP加载资产的问题所需的function取决于解决了最终对请求HTTP资产的HTTPS页面负责的任何问题。 ) 继续redirect到原来的页面100次以上,直到浏览器放弃。 不要让Apache启动,当我注释掉新的时候继续这个行为。 在wordpress.error.log中与站点相关的Apache日志logging是: [Thu Feb 04 16:40:30.525930 2016] [ssl:emerg] [pid 7029] AH01895:无法configuration客户端身份validation的validation位置 [Thu Feb 04 16:41:51.249704 2016] [ssl:emerg] [pid 25328] AH01895:无法configuration客户端身份validation的validation位置 [Thu Feb 04 16:43:30.627877 […]
Apache的文档说: ServerAlias可能包含通配符。 和 通配符*和? 可以用来匹配名称 我的同事声称,问号与除句点( . )以外的任何字符匹配,因此可用于“单级”通配符。 我找不到任何支持此用法的文档。 在ServerAlias指令中,问号是什么意思? 请引用文档。
尝试构build一个规则,以使任何不包含头X-CFKey的入站stream量与特定的X-CFKey相匹配。 我已经成功的testing了X-CFKey的modsecurity,但是在标题丢失的时候失败了。 我正在尝试使用!@contains来testing标题存在的不足。 我能够让@contains通过可预见的通过!@contains匹配的一切。 SecRule REQUEST_HEADERS_NAMES "!@contains x-cfkey" \ "id:52,log,deny,status:403,t:lowercase,msg:'Does not contain header X-CFKey'" 我在这里错过了什么,为什么! 变得如此不可预测?
我有一个服务器运行Apache / 2.2.22(Debian),PHP 5.6.17 FPM和MySQL 5.6.25。 该项目使用名为Redaxo的CMS运行(我不认为这很重要,但是我会告诉你)。 在Redaxo中有一些function需要一些时间(例如删除caching并重build需要1-2分钟)。 在这段时间,当其他用户来到网站FPM崩溃与500 Internal Server Error ,我不得不重新加载页面多次,直到服务器错误消失,并完成过程。 我注意到,只有在网站上同时有太多的用户,而且只有在繁重的操作完成时,才会发生这种情况。 10个用户在同一时间只是冲浪=没有问题 10个用户同时上网,而caching删除= 500错误给大家。 我通过禁止除了我以外的每个人的网站(.htaccess否认/允许与IP)检查了这一点。 然后我做了沉重的手术,没有问题。 一旦多人再次来到现场,问题又来了。 会是什么呢? 你需要从我那里得到什么信息? 这些值在php-fpm.conf中设置(未注释) [global] pid = /run/php5-fpm.pid error_log = /var/log/php5-fpm.log emergency_restart_threshold = 0 include=/etc/php5/fpm/pool.d/*.conf 这些值在项目特定的fpm.conf中设置(未注释) [projectname] user = projectname group = projectname listen = /var/run/php5-fpm-projectname.sock listen.owner = projectname listen.group = projectname listen.mode = 0660 pm […]
我有一个工作的EC2实例,我想在Elastic Load Balancer后面放置一个副本,但是我无法实现。 ELB设置: 端口: ELB HTTP:80 – > EC2 HTTP:80,默认VPC 安全组: AWS-OpsWorks-LB-Server 健康检查: HTTP,80,/ EC2实例:我工作的EC2实例 直接点击ELB会返回一个503错误代码。 挖掘我的EC2实例的Apache日志,我看到: xxxxx – – [18/Feb/2016:14:21:18 +0000] "GET / HTTP/1.1" 400 52 "-" "ELB-HealthChecker/1.0" ELB运行状况检查返回400,错误的请求,但很确定“/”path是正确的,因为我在/ var / www / html中有一个工作的Drupal实例。 我不认为问题是安全组,因为如果我使用完全相同的ELB,并通过AWS OpsWorks将新的EC2实例作为PHP应用服务器启动,则ELB可以正常工作。 我假设我必须丢失一些软件包或configuration,但是查看AWS用来构buildPHP应用服务器的Chef 11食谱,很难看到我忘记了什么。 思考?
我已经阅读了Apache 2.4 Expr的文档,但无法使它在configuration文件中工作。 有人可以给我一个如何格式化expression式内的string的例子吗? 文档说下面应该工作。 # Function example in string context Header set foo-checksum "expr=%{md5:foo}" 但是,当我剪切和粘贴到我的configuration文件的代码,我得到以下错误: Unrecognized header format % 我也试过这些: Header set exprResult "expr=tolower('MAKEMELOWERCASE')" Header set exprResult "expr=%{tolower('MAKEMELOWERCASE')}" Header set exprResult "(tolower('MAKEMELOWERCASE'))" Header set exprResult "${tolower('MAKEMELOWERCASE')}"
我刚刚从我的Debian上用apache 2.4.10安装了CouchDB。 $ curl http://localhost:5984/ {"couchdb":"Welcome","uuid":"76929f1fc6f1e2c01edcd5b712fff044","version":"1.6.1","vendor":{"version":"1.6.1","name":"The Apache Software Fou ndation"}} 我想通过https Apache反向代理使用它: <IfModule mod_ssl.c> <VirtualHost _default_:443> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride All SSLRequireSSL </Directory> #For using my owncloud and wiki without HTTP AUTH, and all the rest #with HTTP AUTH <LocationMatch "^/(?!owncloud|wiki)"> AuthType Basic AuthName "Acces Restreint" AuthBasicProvider file AuthUserFile /home/…myfile […]