我被要求设置一个更新的优化磁贴服务器,通过HTTPS提供磁贴(当页面不是HTTPS的时候,Google已经禁用了一些地图API),而且使用HTTP2似乎也是正确的做法。 现有的服务器是Apache 2.4.7,运行TileStache(一个Python应用程序)的mod_python来提供tile。 新的服务器是configuration了SSL和HTTP2的Nginx 1.11.3,并使用uwsgi 2.0.12以相同的TileStacheconfiguration运行TileStache。 然而,客户报告说,澳大利亚新服务器的性能比现有服务器慢。 在使用Apache ab在本地testing平铺负载性能时,现有服务器和新服务器都位于美国,并且位于同一基础架构中的单独服务器,现有的Apache服务器通过三个请求平均提供131毫米的单个平铺。 新的Nginx服务器在三个请求上平均提供115毫秒的单个图块。 从连接到澳大利亚高速NBN(国家宽带networking)的14.04 Ubuntu机器以100Mbit / s的速度,对现有服务器的同样ab -n 3请求平均产生867ms 。 但新的服务器平均返回瓷砖1562毫秒 。 客户在澳大利亚的ADSL连接上报告了类似的1-2秒响应,但是来自Chrome开发工具而不是abtesting。 与HTTP相比,什么会导致HTTP2上的HTTPS降级? 更新 我已经configuration了nginx来logging请求协议,并且ab似乎实际上是使用HTTP / 1.0进行请求的。 所以重新考虑使用哪个testing客户端。 我已经设置h2load使用http2执行70个并发请求: h2load -t2 -c 70 -n 70 -i urls 。 在同一基础架构的服务器上,我看到: 最小值最大值平均值sd +/- sd 请求时间:2.62ms 15.40ms 7.11ms 3.12ms 72.86% 连接时间:14.94ms 68.85ms 44.32ms 17.95ms 52.86% 时间到第一个字节:20.90ms 71.60ms 51.43ms 16.79ms 50.00% […]
我的search已经变成了空白…我试图改变这个响应的404禁止状态404 Not Found状态: Header set Status-Line "HTTP/1.1 404" "expr=%{REQUEST_STATUS} == 403" 但是,这是没有效果的。 我怀疑这可能是因为实际上Apache没有使用Status-Line头,虽然它是HTTP规范的一部分。 那么这甚至有可能吗? 我试图用Header指令来完成这个工作,而不是重写,因为它似乎是更好的方法。
我有一个域名托pipe在Godode,并在Linode托pipe。 我添加了附加的屏幕截图是我的DNS设置。 蓝色突出显示区域是我把我的托pipe服务器的IP地址 现在我有3个网站在我的服务器上访问 domain.store admin.domain.store operator.domain.store我的主域中有一个DOT ,就像domain.store是我的主doamin。 在Apache ,我创build了3个不同的conf文件 000-default.conf 的Myproj-admin.conf中 的Myproj-operator.conf 每个文件的内容是一样的,(指向它们各自的目录)。 000-default.conf <VirtualHost *:80> ServerName www.admin.domain.store ServerAdmin [email protected] # Change the paths below to the project document root such as /var/www/project1. DocumentRoot /var/www/adminProject/public <Directory /var/www/adminProject/public> Options -Indexes +FollowSymLinks AllowOverride All Require all granted </Directory> # Set Default Log Paths ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog […]
在Apache和mod_wsgi下运行的Django应用程序在每个Ansible剧本执行后重新开始。 我的要求是运行多个playbooks并行运行。 后台线程(在服务器启动时创build)从文件系统中select一个可用的播放,并提交给一个线程池,以便并行运行 我的应用程序configuration如下所示: <VirtualHost *:1234> SSLEngine On SSLCertificateFile <path to cert file> SSLCertificateKeyFile <path to key file> ServerName example <Location /> SSLRequireSSL </Location> WSGIDaemonProcess myapp user=user group=user WSGIProcessGroup myapp WSGIScriptAlias / /home/user/test-wsgi.py CustomLog /var/log/myapp/access.log vhost_combined </VirtualHost> 我的脚本flie import os import sys import site # Add the site-packages of the chosen virtualenv to work with […]
Apache(2.4.x)是一个众所周知的服务器,性能优化已经被广泛讨论和logging。 不过,对于Apache反向代理(Nginx或其他任何其他软件背后)的情况,我想知道什么最适合Apache,只要涉及到性能。 考虑到这个非常简单的Nginxconfiguration: server { keepalive_timeout 300s; location / { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://localhost:8080; proxy_pass_header Content-type; } } 没有给出实际值(与硬件,交通和应用types紧密相关),与通常用于前端服务器的逻辑相比,逻辑应该在某些方面有所不同? 例如,当我们正在谈论服务器到服务器(硬件)时(甚至两台服务器(软件)通常在本地主机上进行通信), keepalive是一个很好的做法? 如果是的话,是否有一个基准开始? Apache将所有的Nginx请求视为同一个客户端还是X-Real-IPX-Real-IP或X-Forwarded-For将会使Apache考虑来自不同客户端的请求? 我猜就Apache而言,客户端是IP_SRC:Port 。 我的意思是,如果所有通过Nginx代理的请求被认为是一个客户端,那么Apache将如何尊重MaxConnectionsPerChild ? Apache与mod_prefork将如何分叉(或不)工人? 在这个MOD中,客户和工人是1:1的关系。 而且,由于工人一次不能处理多个客户,请求将会排队,直到有免费的工作人员可用? 有什么最好的做法应该注意这种设置? 有没有一种模式可以比另一种更好? 还是应该避免一个国防部?
连接到我的个人网站时,我收到Mozilla Firefox的SSL_ERROR_RX_RECORD_TOO_LONG错误消息: Secure Connection Failed An error occurred during a connection to www.fturco.net. SSL received a record that exceeded the maximum permissible length. Error code: SSL_ERROR_RX_RECORD_TOO_LONG The page you are trying to view cannot be shown because the authenticity of the received data could not be verified. Please contact the website owners to inform them […]
我有以下编码的url https://example.com/external-image?url=http%3A%2F%2Fwww.thirdpartydomain.com%2FTWM%2FImages%2F1264%2F143242%2FFull%2F2201625016119496.jpg 我使用国防部重写parsing查询string,然后代理的url。 我这样做的原因是从其他第三方网站使用我自己的SSL安全的共享图像。 下面的代码包含非编码的查询参数,这些参数可以很好地工作。 示例url https://example.com/external-image?url=http://www.thirdpartydomain.com/TWM/Images/1264/143242/Full/2201625016119496.jpg 示例代码 RewriteCond %{QUERY_STRING} url=((?:https?:\/\/)?(?:[^@\n]+@)?(?:www\.)?([^:\/\n]+).*) [NC] RewriteRule ^.*/external-image$ %1 [P,NC,L,E=new_host:%2] <If "-T reqenv('new_host')"> RequestHeader set Host %{new_host}e </If> 我的目标是编码我的查询参数在浏览器中形成一个有效的url,然后解码查询参数之前,我代理的url。 任何人有任何想法来处理这个最好的方法?
我对Ubuntu 16.4上的Apache服务器上的虚拟主机的设置感到困惑。 我没有按照这个指示在Ubuntu上安装Processmaker。 一切工作正常,但如果我访问我的网站: http : //process.koina.eu : 8080我只看到/var/www/html/index.html下的默认Apache文件。 但是我的过程控制器位于/ opt / processmaker下的指令中。 在日志中一切似乎运行良好。 问题是我的pmos.conf没有被添加/识别到Appacheconfiguration。 当我运行“sudo a2ensite pmos.conf”或a2dissite命令并重新启动服务器时,这并没有什么区别。
UseCanonicalName Off ServerAlias *.mysite.info ServerName mysite.info VirtualDocumentRoot "/var/lib/jenkins/workspace/%-3/builds" ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory /var/lib/jenkins/workspace> Require all granted Options FollowSymLinks Includes ExecCGI AllowOverride All Order deny,allow Allow from all </Directory> 我试图configurationApache,使每个jenkins的工作有它自己的私人三级域。 当我访问我的项目.mysite.info和Apache返回我/ var / lib / jenkins / workspace / myproject 现在我想为我的项目(阿尔法,testing版)有两个版本,所以我想打电话给我的jenkins的工作alpha.myproject和beta.myproject 这样做的问题是阿尔法。 myproject .mysite.info将会redirect到/ var / lib / jenkins / workspace / myproject,因为 myproject将会是由%-3指定的右边的第三个元素。 […]
我试图设置FastCGI在Apache 2.4.6(CentOS)上使用PHP。 我正在按照docs逐字从https://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html /etc/httpd/conf/httpd.conf : … <Directory "/var/www/mybin"> Options all Order allow,deny Allow from all </Directory> FcgidMaxRequestsPerProcess 10000 Alias /phpapp/ /var/www/myphpapp/ <Location "/phpapp/"> Options +ExecCGI AddHandler fcgid-script .php FcgidWrapper /var/www/mybin/php-wrapper .php Order allow,deny Allow from all </Location> … ls -al /var/www/{,mybin,myphpapp} (注意所有相关的0777烫发) /var/www/: total 4 drwxr-xr-x. 6 root root 68 Sep 18 20:51 . drwxr-xr-x. […]