Articles of apache 2.4

Chroot使用PHP CLI将用户引导到他们的家中,以及一切运行Magento 2 CLi命令

好吧,首先我确定会有一些“额外的信息”请求,所以请在OP评论中发布,我会尽我所能提供额外的信息! 这里是瘦,首先是服务器: 它是一个共享的登台服务器,Ubuntu 16.4 LTS与Apache2.4,Php7.1,Mysql 5.7。 它有Webmin,VirtualMin和UserMin安装(最新)。 它也有phpMyAdmin全球安装。 它的configuration允许站点使用mod_php(使用www-data),CGI,FCGI(默认)或FPM + FCGI。 CGI / FPM varients使用SuExec来执行这些站点。 Web服务器本身完美地工作。 所以,现在的任务是build立一个Chroot监狱,允许现有的域用户使用SSH或SFTP,但只能看到他们的主目录,这个目录已经被最新的Magento 2安装。 在这个例子中,我们将使用这些细节: User = domain Group = domain Home Dir = / home / domain / Chroot = / var / chroot / 现在,我可以设置Chroot罚款,我所做的是复制需要的relivent lib / var / usr文件,允许命令ls,bash,sh,rm,rmdir,mkdir,touch,vi和php。 它花了一些工作,但我得到的PHP命令工作(find所有的模块依赖之后)几乎正确。 CHroot监狱是好的,我登上了/ home / domain / var / chroot […]

Httpd mod_rewriteconfiguration和虚拟主机交互

我在Ubuntu 14.04上安装了Apache(2.4.7),然后将我的虚拟主机configuration复制到sites-available目录中,然后将SSLconfiguration文件重写到conf-available目录中,然后使用a2ensite和a2enconf启用它们。 我知道他们被parsing了,因为由于SSLconfiguration,在那里指定的头文件被添加到响应中,并且当(后来出于debugging的目的)禁用mod_rewrite时,Apache抱怨不了解RewriteEngine on指令。 当我开始testing时,Apache拒绝重写最简单的规则: RewriteEngine on # Rewrite https://localhost/test to https://localhost/test.html RewriteRule ^(.*)$ $1.html [L] 当我直接尝试https://localhost/test.html ,它工作。 当我明确地在我的虚拟主机标签中包含configuration文件,重写开始工作: <IfModule mod_ssl.c> <VirtualHost *:443> Include conf-enabled/rewrites.conf … 为什么当它被包含在全局的时候,它的工作方式是缺省的/etc/apache2/apache2.conf ? 关于这种行为有更多的信息吗?

无法访问Tomcat服务器

突然,tomcat服务器没有响应 当我运行netstat -an | grep:80 | sorting命令我得到以下结果 tcp 0 0 127.0.0.1:50779 127.0.0.1:8009 ESTABLISHED tcp 0 0 127.0.0.1:50782 127.0.0.1:8009 ESTABLISHED tcp 0 0 127.0.0.1:50786 127.0.0.1:8009 ESTABLISHED tcp 0 0 127.0.0.1:50803 127.0.0.1:8009 ESTABLISHED tcp 0 0 127.0.0.1:50805 127.0.0.1:8009 ESTABLISHED tcp 0 0 127.0.0.1:50808 127.0.0.1:8009 ESTABLISHED tcp 0 0 127.0.0.1:50809 127.0.0.1:8009 ESTABLISHED tcp 0 0 127.0.0.1:50810 127.0.0.1:8009 ESTABLISHED […]

Apache无故redirect

所以我有一些问题与Apache …我有我的DNS设置,所以我有4个域和4个IP在服务器上。 我希望这样,当我从1 IP与example1.com收到一个http连接它redirect到https://example1.com ,我有SSL证书正常工作。 我以前有服务器主机名和运行http2 / example2.com,当我连接到example1.com我登陆example2.com。 我手动redid整个configuration文件,并从机器上删除主机名只是为了没有区别。 当我进入Firefox的debugging信息,它告诉我,我有一个从https://example1.com到https://example2.com的301redirect设置,这是我之前做的,但不再是在configuration文件…我不知道该怎么做…在[example1.com IP]的VirtualHost指令中:443我甚至不使用redirect指令。

我的Apache2服务器上的stream量过大和随机

TL; DR,为什么我受到如此多的stream量,而不是针对我的实际网站? 我如何解决它? 我一直在诊断一个6个小时左右的问题,最初我以为是DDOS攻击,但事实certificate这是与此相关的: https://askubuntu.com/questions/802222/random-urls-in-apache-access-log 现在,我已经创build了一个默认网站,并且几乎封锁了所有的内容,但是stream量又回来了,它正在咀嚼我的Linode的限制,就像过去12小时内的15 GB,而Google Analytics上没有用户。 我到处寻找解决办法,并已采取措施,以防止DDOS,如module_evasive,但现在这个stream量正在返回,看起来像是由于某种原因,我的服务器正在接收请求,并获得这么多的数据命中。 当数据和CPU再次开始上升时,/ html / site / logs / access.log的最后一块: https ://pastebin.com/wskzGNi9 服务器graphics

脚本通过本地主机运行,但不通过127.0.0.1

我正在尝试从apache 2.2迁移一些软件到2.4。 我有它的工作 – 差不多。 当通过地址localhost访问服务器的东西的工作,但是当试图通过127.0.0.1访问一些事情不。 例如, http:// localhost / cgi-bin / WI_facility显示正确的页面,但是http://127.0.0.1/cgi-bin/WI_facility问我是否要save the file WI_facility which is BIN file (164KB) 。 下面是apache2.conf的关键部分: <VirtualHost *:80> DocumentRoot /var/www/html <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/html> Options -Indexes +FollowSymLinks +MultiViews AllowOverride All Require local </Directory> ScriptAlias /cgi-bin/ /var/www/cgi-bin/ <Directory /var/www/cgi-bin> AllowOverride All Options +ExecCGI SetHandler […]

将IIS web.configredirect规则转换为Apache .htaccess

我需要将一个旧的PHP站点从Windows IIS移动到Linux Apache服务器。 有一些redirect规则,我必须转换。 其中一部分我已经pipe理,但对于其他一些规则我缺乏理解,使他们的工作。 有原始的web.config规则: <rule name="Rule1" enabled="true" stopProcessing="true"> <match url="^switch\.php$" /> <conditions> <add input="{REQUEST_METHOD}" pattern="^POST$" negate="true" /> <add input="{QUERY_STRING}" pattern="^lang=([^=&amp;]+)$" /> </conditions> <action type="Redirect" url="switch/{C:1}" appendQueryString="false" /> </rule> <rule name="Rule2" enabled="true" stopProcessing="true"> <match url="^switch/([^/]+)/?$" /> <conditions> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="switch.php?lang={R:1}" /> </rule> <rule […]

Debian上的错误521,而不是Ubuntu上

我以前使用的是Ubuntu 17,现在我切换到Debian 8并重新上传我的网站,现在即时获取521错误Web服务器closures。 我使用CloudFlare,Apache 2.4.10,我的网站是PHP。 PS:如果你需要我的Apacheconfiguration只是问!

使得certbot与Apache和英镑工作

在我的debian jessie服务器上,我生成了let's encrypt在端口443上使用apache监听的证书。我为我的所有域使用了唯一的证书。 然而,有负载的问题,我不得不安装英镑,并改变服务器configuration:现在我有pound监听端口443,传递请求varnish端口80,传递到端口8080的apache 。 现在我正在寻找一种将新域添加到现有证书的方法。 命令sudo certbot certonly –cert-name mycertname –expand -d mydomain1,mydomain2问我应该使用什么方法,但是: 我不能使用–apache,因为pound使用443端口 我不能使用–webroot,因为每个域使用一个不同的域(域号是相当高的,~20),并且指定每个域的web根会很烦人 我尝试使用–standalone(我发出命令之前停止了英镑),但我不能得到的命令即将结束:它“冻结”,当它说“清理挑战”,我不得不手动停止它。 任何提示?

PHP-FPM超时和后端连接失败

我有一个PHP7 FPM和Apache 2.4的服务器。 我已经设置好运行用户池。 我在服务器上有几个PHP-FPM池。 只有一个是超时和遇到连接失败。 这是该用户池的池configuration: [pool_user] user = pool_user group = pool_user listen = /run/php/php7.0-fpm.pool_user.sock listen.owner = www-data listen.group = www-data pm = dynamic pm.max_children = 1000 pm.start_servers = 100 pm.min_spare_servers = 50 pm.max_spare_servers = 500 pm.process_idle_timeout = 10s pm.max_requests = 500 我得到了一堆奇怪的错误,我似乎无法动摇。 这些来自Apache错误日志 AH01079:无法连接到后端:httpd-UDS AH01075:将请求分派到以下位置时出错: AH01067:无法读取FastCGI标头 而且似乎不pipe我调整或改变它都不会解决问题。 任何人都可以给我一些指导呢?