我试图从PHP运行adb使用: exec( 'adb devices', $output, $return_val ); 但是我得到了126错误。 我认为问题是,PHP运行“www-data”用户,并没有执行adb的权限。 任何解决scheme
我试图在Django捕获请求之前使用Apache的Rewrite模块redirect用户。 我尝试了以下将用户从“test.php”redirect到“链接”页面 <VirtualHost 10.0.0.3> WSGIDaemonProcess mydomain.com processes=1 threads=15 display-name=$ WSGIProcessGroup mydomain.com DocumentRoot "/home/james/www" <Directory "/home/james/www"> Options +FollowSymlinks RewriteEngine On RewriteRule ^test.php links [NC,R=301,L] Order allow,deny Allow from all </Directory> WSGIScriptAlias / "/home/james/www/app.wsgi" ServerName mydomain.com </VirtualHost> 这种方法不起作用(当浏览到mydomain.com/test.php时,它不会将我redirect到“链接”页面)。 有没有办法用mod_wsgi实现重写?
我们有一个LAMP应用程序,由于连接到应用程序的大量并发用户,我们已经开始感觉到性能不佳。 我已经看了Apache和MySql的个别参数,我们需要configuration它们以获得更好的性能和大量的用户,我不认为这会导致任何进一步的改进。 我想知道是否有任何其他的策略,我们可以看看增加谁可以使用我们的基于Web的LAMP应用程序的并发用户的数量,并没有看到性能下降。 是否有可能添加更多的Apache服务器或更多的MySQL服务器和负载平衡呢?
这是我的.htaccess简单的URL重写任何MVC架构。 Options +FollowSymlinks RewriteEngine On RewriteBase /personal/site/ RewriteCond $1 !^(index\.php|resources|robots\.txt) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L,QSA] 每件事情只有一个例外起来。 在index.php所在的根目录下,我创build了一个文件generator.js ,我也有一个名为generator的控制器。 所以对于一个请求, http://localhost/personal/site/generator/css , 它必须重写到http://localhost/personal/site/index.php/generator/css 但它是重写到http://localhost/personal/site/generator.js/css 如何解决这种情况?
我不明白从Apache看到的性能。 我希望有更多的并发apache请求能够执行得更好,但是要超过3个并发请求,总体性能是平稳的。 例如,如果我有3个或4个并发请求,我看到相同的请求/秒。 对于每个额外的并发请求,平均响应时间会增加,这样整个请求处理速率将保持不变。 为了testing这个,我在slicehost上创build了一个新的ubuntu 10.04 vm。 这是一个4核心虚拟机。 我设置了它 aptitude update aptitude install apache2 apache2-utils curl curl localhost/ # verify hello world static page works 然后我以响应时间和请求/秒为基准。 编辑4:我用“for $ in(seq 1 40)”做了基准testing;做ab -n 10000 -c $ x -q localhost / | grep whatever; done“。 确切的命令和数据位于https://docs.google.com/spreadsheet/pub?hl=zh_CN&hl=zh_CN&key=0AurdDQB5QBe7dGtiLUc1SWdOeWQ4dGo3VDI5Yk8zbWc&output=html 运行testing时,每个内核的CPU使用率大约为25%。 编辑2:根据htop,内存使用率为45/245 MB。 编辑1:我只是在Ubuntu 11.04虚拟机上尝试了同样的事情,总体问题是相同的,但性能更糟糕:大多数并发水平约为2100 reqs / sec,每个核心使用大约50%的cpu 。 编辑3:我在真正的硬件上试了一下,看到一个峰值reqs /秒约4或5个并发请求,然后它下降了一点点,并展平。 […]
我使用Windows 7与物理机器和虚拟机build立了一个networking。 我在虚拟机中设置了一个Apache服务器来侦听端口80,现在如果我在虚拟机里设置DocumentRoot(与Apache服务器相同),但是我希望我的文档位于物理机器目录中,并且如果我尝试在networking目录中设置DocumentRoot在事件pipe理器中出现错误,说明DocumentRoot必须是一个目录。 在Apache机器上,我将这个目录作为networking单元添加,如Z:/ myfolder 在物理机器上,我将这个文件夹设置为共享,并授予所有的读写权限 我不是很好configurationnetworking,所以我可能会失去一些有关权限或任何东西,但是当我在Windows资源pipe理器中打开此文件夹我不提示login或任何东西。
即时让我的头在Apache附近,需要一些build议,我有一个运行nagios监视系统的Linux盒子,但是当你转到服务器的IP地址,它提出了默认的IT作品! 页,如果我然后把一个子文件夹到IP地址的末尾,即/ Nagios /它加载Nagios接口。 conf.d文件夹中有一个nagios.conf文件,在那里是我正在寻找的代码(因为它没有在默认文件中的网站可用),我的问题是,而不是有代码在那里我可以把它放到虚拟主机的conf文件中的站点可用文件夹? 我想这样做的原因,以帮助保持事情更容易记住,我想设置一个子域,所以当你打这个子域直接到nagios文件夹。 所以目前我的虚拟主机configuration看起来像这样 码: <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/error.log # […]
目前,我正在使用mod_proxy_ajp将请求均衡到多个Tomcat服务器。 呼叫者使用客户端证书和ACL进行身份validation。 这一直工作正常,呼叫者以均匀的速度路由到任一服务器。 现在我想为每个用户预取和caching数据,所以每个Tomcat服务器都会为一组已知的用户提供服务。 所以我认为按字母顺序拆分主叫方会很好。 用户名(CN或DN)以AM开头,到服务器1,名字以[NZ]开头的用户转到服务器2.但是我不知道如何做这个工作。 目前我有: <Proxy balancer://lb-service> BalancerMember ajp://svr1:8009 loadfactor=1 BalancerMember ajp://svr2:8009 loadfactor=1 </Proxy> <Location /lookup> ProxyPass balancer://lb-service/lookup </Location> 我正在考虑使用mod_rewite来改变url,以包括用户的CN,但我似乎无法做到这一点。 我几乎坚持使用Apache mod_proxy_ajp和Tomcat进行负载平衡。 我可以更改运行Tomcat的服务来接受不同的请求。 任何人都有一个好办法做到这一点?
我只是用Apache,FastCGI和PHP-FPM设置我的服务器。 我的问题是关于/ cgi-bin /文件夹:是否真的有必要为每个使用不同用户/组运行apache的单个虚拟主机提供一个/ cgi-bin / php-fpm包装? 而且,如果用户删除了cgi-bin文件夹,那么fpm / fastcgi的好处将会丢失。 理想情况下,我想设置PHP-FPM,而不需要.conf文件之外的任何东西。 据我所知,php-cgi二进制文件(这就是php-fpm包装器执行的所有内容)可以被系统上的所有用户执行…那么为什么包装要运行的同一个可执行文件的麻烦用户呢? 更具体地说,我怎样才能改变这个configuration直接使用php-cgi二进制文件,而不是通过包装? 与我的问题有关的文件/结果是: /etc/apache2/modules.d/20_mod_fpm.conf ————————————————– ——————————- … FastCgiExternalServer / var / www / localhost / cgi-bin / php-fpm -host 127.0.0.1:9000 AddHandler php-fpm .php 动作php-fpm / cgi-bin / php-fpm DirectoryIndex index.php … 在/ var / WWW /本地主机/ cgi-bin目录/ PHP-FPM ————————————————– ——————————- #!的/ usr / bin中/ […]
在我的办公室,我们使用一个局域网(通过Comcast连接到互联网),30-50人同时访问了一个networking应用程序(在Heroku上)。 服务器的回应就好像被5万人击中一样。 我是不是在吠叫错误的树木,或者如果一个办公室networking上的50个人同时点击一个应用程序,而全世界有50个人在使用这个程序,那么它会产生什么影响呢? 对于这样一个模糊的问题抱歉,但是这只是我想到的一种可能性。 提前致谢。