介绍: 上周一我的业务(Debian 8,Postgres 9.3,Apache 2和PHP 5)的Web服务器崩溃:(好新的是我有数据的备份:) 从那时起,我正在安装这个环境的新服务器:Debian 8,Postgrest 9.4,Apache 2,PHP 5 今天服务器工作正常,我已经恢复了Postgres表上的数据。 在网站上我有一个页面,我加载Postgres查询的数据。 我用checkboxselect行,我点击一个button,使用Jquery + Ajax + PHP更新数据库中的select寄存器 问题: 从我重新安装新的服务器,当我想更新寄存器,我不能正确显示。 我已经重新加载到页面,以正确查看更新。 例如:我select了8个寄存器,点击button来更改一个字段,执行完update.php之后,只更新了6个,而不是2个(这个有时会发生,可能我select了8个和5个好的…或者其他的 我使用PHP的Ajax与jQuery。 问题是服务器,但在旧的服务器工作正常。 我在浏览器的debuggingnetworking控制台中看到问题。 debugging控制台 我禁用了iptables服务来testing。 我已经检查了apache.conf和postgres.conf。
如果Web应用程序服务器(例如nginx和php-fpm )位于Load-Balancer之后,例如AWS-ELB : Client -> Load-Balancer -> Web Application server 从Web应用程序获取真正的客户端IP有两种方式来实现我: 在Web服务器上处理转发IP,如设置nginx真实IP模块 。 处理Web应用程序上的转发IP,例如通过从信任代理转发头来获取IP。 哪一种方法更好? 或者还有其他更好的方法吗? 谢谢。
我在我的VPS上部署了许多Web应用程序和服务,包括Jenkins,Node.js应用程序,P2P文件同步服务等,但是我遇到了一些问题: 我使用NginX进行反向代理,其工作人员以用户www-data身份运行。 我听说这个用户应该被授予尽可能less的权限。 它没有shell,其主目录是/var/www 。 所以我创build了另一个用户www-admin进行web应用pipe理和部署。 那么目录/var/www权限设置是什么? 对于www-data应该是可读的,对于www-admin可写的。 我应该使用用户www-data来运行所有的Web服务吗? 如果是这样, www-data应该被授予目录/var/www (这是它的主目录)的写权限,因为我使用PM2进行进程pipe理,它将运行时数据保存在$HOME/.pm2 。 允许www-data写入目录/var/www是否危险? 我听说www-data不应该在/var/www上被授予写权限,因为恶意的web应用程序可能会威胁到其他web应用程序。 我使用Jenkins作为CI,它以用户jenkins运行。 这使事情更复杂。 例如,当使用Jenkins部署Node.js应用程序时,新的PM2实例将以用户jenkins开始运行。 总之,如何设置用户,用户组,目录权限和进程运行用户,以安全的方式妥善pipe理我的Web服务?
我尝试设置我的Web服务器文件夹的权限。 当我尝试创build一个新文件时,它不会inheritance组权限。 文件夹的权限设置为700,文件为600.下面是执行授予权限的命令列表: sudo adduser $USER www-data sudo chown -R $USER:www-data /var/www/html sudo chmod 2775 -R /var/www/html sudo find /var/www/html -type d -exec chmod 775 "{}" \; sudo find /var/www/html -type f -exec chmod 664 "{}" \;
我们有一个带有一个IIS网站的Web服务器和4个使用URL重写指向同一个IIS网站的URL。 是否有可能为每个URL分开维护页面。
我正在尝试为我的后端应用程序服务器设置一个反向代理来执行负载平衡,并防止其他端口暴露给客户端。 如果客户端未通过身份validation,则我的应用程序服务器将客户端从http:// localhost:80redirect到http:// localhost:7001 / authenticate以进行身份validation。 我已将Windows Server 2012 R2中的IISconfiguration为反向代理。 默认网站在http:80和https:443上侦听并安装了这些模块:AAR,Web Farm,External Cache,URL重写。 在testing期间,我观察到我能够将请求发送到http:// localhost:80,并且在请求的位置标题被更改为http:// localhost:7001 / authenticate时,请求被中止。 因为客户端只知道http:80或https:443,所以我如何重新路由http:// localhost:7001 / authenticate ?
我们有一个在内部服务器上运行的ASP.Net MVC应用程序。 我们只使用Windows身份validation来允许访问部分网站。 当我们将IIS设置为需要SSL连接时(使用内部生成的证书),我们总是得到一个403响应。 如果我closuresSSL所需的开关一切正常。 但是,只要我把它打开,403错误又回来了。 这是假设工作的方式吗? 有没有解决方法? 它与自己生成的证书有关吗? 更新的信息最初的错误是一个402.1错误,然后被路由到403错误消息。
我是电子商务网站模块的开发者。 该模块显示一些dynamic数据(html)在网页上用Ajax调用。 Ajax调用从数据库获取html。 1查询每个页面加载。 数据库查询响应大小约为10kb。 我的客户担心这是太多了,他们写道,他们看到了数据库处理消耗的显着增量。 他们说,分析数据库查询,他们看到,查询caching不caching查询的答案,因为它大于10KB。 这真的太大了吗? 我的猜测是,我的客户端看到数据库处理消耗的增量,因为别的东西。 但是,让我们说,每个查询将从数据库HTML返回大小为100kb。 如果这会发生在每个页面加载,会是太多的东西? 这是重大的还是轻微的影响? 我希望有人能根据自己的经验对此有所了解。 我有我自己的答案,但可能太主观了。 谢谢!
我们有一个通过PHPMailer发送电子邮件的Web服务器,在将电子邮件发送到域上的电子邮件地址时,这种方式正常工作。 但是,将电子邮件发送到域外的地址时,会失败,并显示以下错误: “SMTP错误:以下收件人失败:[email protected]” 我曾尝试为Web服务器的IP地址设置一个接收连接器,并将其打开给匿名用户等,但仍显示相同的错误。 这是Windows Server 2008。 任何帮助将不胜感激。
我在工作MPMconfigurationtestingApache,并试图了解它。 工作人员configuration如下所示。 <IfModule mpm_worker_module> ServerLimit 256 ThreadLimit 50 StartServers 10 MinSpareThreads 20 MaxSpareThreads 30 ThreadsPerChild 3 MaxRequestWorkers 50 MaxConnectionsPerChild 0 </IfModule> 按照这个设置,当apache启动时,应该有10个subprocess,每个subprocess可以有3个线程。 但是当我列出进程树时,我看到每个subprocess有11个subprocess和4个线程。 第一个subprocess没有任何线程。 任何人都可以解释吗? 这是pstree -lpg的输出 ├─httpd(1795,1795)─┬─httpd(1796,1795) │ ├─httpd(1797,1795)─┬─{httpd}(1829,1795) │ │ ├─{httpd}(1830,1795) │ │ ├─{httpd}(1831,1795) │ │ └─{httpd}(1832,1795) │ ├─httpd(1798,1795)─┬─{httpd}(1820,1795) │ │ ├─{httpd}(1822,1795) │ │ ├─{httpd}(1823,1795) │ │ └─{httpd}(1824,1795) │ ├─httpd(1799,1795)─┬─{httpd}(1837,1795) │ │ ├─{httpd}(1838,1795) […]