我尝试使用.htaccess文件configuration通过http auth来保护对子目录的访问。 这是我的情况下apache 2.4完整的工作代码。 # Conditionally set environment variable BACKEND_PROTECTION (version for apache 2.4) <If "%{HTTP_HOST} == 'www.somedomain.de'"> SetEnvIf REQUEST_URI "^/typo3/" BACKEND_PROTECTION </If> <If "%{HTTP_HOST} == 'www.someotherdomain.de'"> SetEnvIf REQUEST_URI "^/typo3/" BACKEND_PROTECTION </If> <RequireAny> <RequireAll> Require not env BACKEND_PROTECTION Require all granted </RequireAll> <RequireAll> AuthType Basic AuthName "Protected URI" AuthUserFile /var/www/config/.htpasswd Require valid-user </RequireAll> </RequireAny> 现在我需要另外从authentication中排除该目录的子目录,所以这是我的尝试。 […]
它看起来像我的httpd服务在centos上无法创build/ var / run / httpd导致他拒绝启动。 只是提醒你们,/ var / run指向/ run [root@build72 var]# ls -ld /var/run lrwxrwxrwx. 1 root root 6 Oct 28 2014 /var/run -> ../run / run是一个tempfs(内容在机器重新启动后被擦除): [root@build72 var]# mount | grep /run tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755) tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=800948k,mode=700) 我总是需要创build/ run / httpd,这样我的httpd服务才会启动,否则就会失败: mkdir /run/httpd error_logs中的输出如下所示: [Tue […]
这个问题发生在你: 根据包含端口的头“Host”发出请求,例如“Host:www.example.com:80”,根据https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html #sec14.23 。 你可以用curl来实现curl -v -H "Host: www.example.com:80" -X GET -i http://www.example.com 服务器发出redirect到https的请求,在我的情况下使用下面的RewriteRule RewriteCond%{HTTPS}closures RewriteRule(。*)https://%{HTTP_HOST}%{REQUEST_URI} [R = 301,L] 我注意到响应的“Location”头还包含了端口,和请求的“Host”头中指定的一样。 所以服务器会以“Location: https : //www.example.com : 80 ”来回应,这是错误的。 这发生在“Apache / 2.4.7(Ubuntu)”,但我注意到这个问题也与清漆caching服务器。 为什么这样做? 有没有办法纠正这一点?
所以有一点历史,如果你想要解决当前的问题,请跳过以下部分。 我们正在从SPARC Solaris 10环境中的Apache 2.2.20升级到Apache 2.4.23。 这台服务器是作为一个虚拟主机服务器,它承载了几个ColdFusion 10应用程序。 为简化升级过程,我们使用OpenCSW.org下载预编译的SPARC Solaris 10软件包,该软件包应包含完全独立的Apache 2.4.23安装所需的所有必备先决条件,以便应用程序所有者可以testing和迁移其应用程序Apache 2.2.20到2.4.23。 不幸的是,我们无法使ColdFusion 10与Apache 2.4.23一起工作。 尝试启动Apache实例的错误导致mod_jk.so由于“ap_log_error”定义中的某些不匹配而可能无法正确加载。 从我的研究中,ColdFusion 10为每个实例提供了自己的ColdFusion主题的Tomcat连接器(mod_jk.so)以供使用,但似乎ColdFusion 10在创build新实例并指定Apache 2.4.23安装位置时继续创build不兼容的Apache 2.2 mod_jk.so。 显然,你可以自己编译mod_jk.so,但是你必须使用Adobe的源代码来连接,因为Adobe对源代码做了某些修改,所以它可以和ColdFusion一起使用。 用户jonathan_morgan在这里做一个详细的post如何完成这个: https : //forums.adobe.com/message/5823263#5823263 所以,虽然我已经能够./configuration连接器,运行“make”总是失败。 我试过用gmake编译这个,下面是一个当前gmake操作的读取,它说明了: Finished prerequisites of target file 'mod_jk.la'. 必须重制目标“mod_jk.la”。 gmake [1]:进入目录'/apps/webserver/coldfusion10/connector-source/native/apache-2.0'/ opt / csw / libexec / apr / build-1 / libtool –silent –mode = link / […]
当我尝试从服务对话框(通过httpd.exe -k安装安装后)启动Apache 2.4时,出现以下错误: Windows无法在本地计算机上启动Apache2.4服务。 错误2:系统找不到指定的文件。 操作系统:Windows Server 2008(R2标准版,Service Pack 1)。 我应该提到我的Apache安装位于c:\驱动器上,但Windows安装位于d:\驱动器上。 发行:Apache Lounge Distribution(Apache 2.4.17 win32 VC10)。 这是我试图找出问题的原因: 在c:\ Apache24 \ logs \ error.log中查找。 不幸的是,没有任何东西(没有错误消息,没有警告,没有,甚至不存在错误日志)。 确保configuration文件httpd.conf位于c:\ Apache24 \ conf文件夹中。 试图手动执行“服务”对话框所说的是可执行文件的path:“c:\ apache24 \ bin \ httpd.exe”-k runservice。 当我从命令行手动运行,似乎没有发生。 没有显示错误消息,但在任务pipe理器进程列表中没有显示httpd进程。 请注意,如果我的path或文件名不正确,我希望看到“系统找不到指定的path”或“不被识别为内部或外部命令…”命令行错误消息。 我从命令行运行时看不到这些消息。 没有任何错误显示,似乎在一两秒钟后停止运行。 再次,在c:\ Apache24 \ logs \ error.log文件中什么也没有显示出来。 如果我从没有选项标志的命令行运行httpd.exe,它似乎运行良好。 标准启动消息显示在错误日志中,但没有错误消息。 httpd.conf文件正确地列出了这个指令的apache目录:ServerRoot“c:/ Apache24” 我手动将c:\ apache24 \ bin目录添加到path中,然后重新启动。 […]
我正在运行“服务器版本:Apache / 2.4.23(Ubuntu)”,我看着我的Apache错误日志,他们充满了以下,我无法弄清楚为什么发生这种情况。 有人可以解释这个错误,我可以如何缓解这个问题? [ssl:error] AH02032: Hostname xxxx provided via SNI and hostname xxx.com provided via HTTP have no compatible SSL setup 我只使用https运行3个虚拟主机。
我有一个EC2 Linux服务器上的一个小的WordPress网站。 我注意到,我用了大量的内存来获取0stream量的站点,并且在检查我的访问日志时,看到了来自单个IP的大量请求,大约每秒1次。 我继续删除有问题的文件,这是不需要的,并通过拒绝所有的网站.htaccess文件阻止IP地址。 现在,看我的访问日志,我看到请求仍在,但如预期的那样。 我的问题是,所有这些要求如何performance密集? 它可能会导致任何问题,有没有更好的方法来处理这个问题?
反向代理专家 目前,我正面临着从NGINX移植到APACHE的挑战。 我不是很有经验,尽pipe我设法编写APACHE,虽然我仍然坚持使用正确的指令(mod_proxy和mod_rewrite),以便它可以作为NGINX上的configuration。 下面是NGINX和APACHE的代码。 NGINX #authentication server upstream auth_servers { server 5.5.5.120:80; } upstream gate_servers { server 5.5.5.121:8020; } server { listen 443; server_name abc.example.com; ##########################SSL config file######################## ssl on; ssl_certificate /etc/nginx/ssl/abc.example.com/server.crt; ssl_certificate_key /etc/nginx/ssl/abc.example.com/server_2048.key; ssl_session_timeout 90; ssl_ciphers EECDH+AESGCM:EDH+AESGCM:ECDHE-RSA-AES128-GCM-SHA256:AES256+EECDH:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4; ssl_prefer_server_ciphers on; ssl_protocols TLSv1.2 TLSv1.1 TLSv1; location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For […]
我有一个应用程序,我需要移动到云,并运行在多个云服务器实例。 当用户向我的应用程序注册时,他会得到一个可以填充他的内容的(子)域。 例如,如果user1注册,他会得到一个URL,如user1.mydomain.com。 内部我的应用程序创build一个新的虚拟主机文件,并重新加载Apache。 如果用户决定要为我的服务付费,那么他也可以使用他自己的域名。 所以他改变他的域的DNS到我的服务器,我的应用程序更改相应的虚拟主机中的ServerName并重新加载Apache。 用户可以使用他自己的域名,如www.user1.com。 这现在就像一个魅力。 但是现在我必须将应用程序移动到云中,在负载平衡器后面至less运行3个云服务器。 所以如果一个新的用户注册,我怎么能同步所有这些networking服务器之间的虚拟主机configuration文件? 我想过关于/ etc / apache2 / sites-available目录的rsyncing,但其他apache服务器如何重新加载呢? 有更好的解决scheme吗? 最重要的是,Apache不应该重新启动,只能重新加载。
我正在尝试加载testing我的团队使用jmeter在AWS ubuntu 14.04上开发和部署的LAMP应用程序 。 我们使用AWS CDN来提供静态文件, mysql和apache在同一个主机上。 当只有一个用户在做东西时,响应时间是正常的,根据页面在2到5秒之间。 我的目标是在同一时间让100个连接的用户在同一时间做出回应。 我使用了一个AWS T2.MEDIUM实例( 2个vCPU + 4GB RAM ),并使用mod_php和prefork模块启动,但是我并不满意。 服务器是可笑的慢。 响应时间为+ 20s , CPU和RAM使用 率高 。 在尝试了一些SO资源之后,我尝试了使用php-fpm和event module 。 RAM使用情况现在比较好,但是由于php-fpm过程使用的CPU太高。 (我尝试与静态/ ondemand /dynamic与不结果) 这里是我的configuration使用事件模块的dynamicconfiguration,为aws t2.medium实例( 2 vCPU + 4GB RAM )上的100个并发用户提供服务 – PHP-FPM CPU使用率非常高: top – 17:21:41 up 1:58, 1 user, load average: 5.52, 3.83, 1.86 Tasks: 128 […]