Articles of apache 2.4

试图了解这个Apache日志行

在我的Apache的access.log文件中,有一些“获取”请求,我不能解决。 例如。 www.postatic.com:80 115.210.66.30 – – [12/Nov/2014:12:36:31 +1100] "GET http://www.cx75planet.ru/XpycT/mimmalina/gost/guest.php HTTP/1.0" 404 60772 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0" 现在www.postatic.com是我的网站。 这是一个面向内容的网站,用户可以创build一个论坛,让人们发布内容(类似于Reddit)。 但在上述行中,它看起来像一个来自115.210.66.30的用户来到我的网站,并试图去 http://www.cx75planet.ru/XpycT/mimmalina/gost/guest.php 但我无法在我的网站上任何地方findURL。 我将所有用户发布的链接存储在数据库中,但无法在任何地方find它。 我解释对吗?

在nginx中,apache的SSLCACertificateFile的select是什么?

我正在从一个Apache Web服务器迁移到Nginx,我需要在nginx库中使用apache的SSLCACertificateFile。 我用过 :- ssl_certificate作为SSLCertificateFile和ssl_certificate_key的替代scheme,作为SSLCertificateKeyFile的替代scheme。 但没有得到任何替代SSLCACertificateFile。 任何build议将有所帮助?

Apache:mod_ssl:错误:未find私钥

我正在安装SSL证书来提供HTTPS。 我在Amazon Linux使用Apache 2.4 ,并在Startssl中获得了证书。 我的Vhostconfiguration如下: <IfModule mod_ssl.c> <VirtualHost _default_:443> ServerAdmin [email protected] ServerName myweb.com DocumentRoot /var/www/html/myapp <Directory /var/www/htmlmyapp> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ErrorLog /var/log/httpd/error_log LogLevel warn CustomLog /var/log/httpd/ssl_access.log combined SSLEngine on SSLCertificateFile /etc/ssl/certs/mycert.crt SSLCertificateKeyFile /etc/ssl/private/mycert.key SSLCertificateFile /etc/ssl/certs/sub.class1.server.ca.pem BrowserMatch "MSIE [2-6]" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1. BrowserMatch […]

停止PHP脚本能够读取其他虚拟主机目录中的文件

好的,假设我的Apacheconfiguration中有两个虚拟主机。 其中一个定义了example.com的目录,另一个定义了second.org。 apache的服务器根目录是/var/www/ ,两个服务器的文件根目录分别是var/www/example和var/www/second 。 如果一个PHP脚本位于var/www/example ,它可以读取整个系统文件。 它也可以读取和执行/var/www/目录中的任何内容。 这意味着example.com上的脚本可以用于在second.org上运行或阅读脚本。 我希望能够locking每个虚拟主机,以便每个PHP脚本只能读取/ var / www / virtualdomain目录。 有点像一个共享主机服务器,如果你尝试运行一个脚本,如: <?php $dir = '/var/www/otheruser'; $files1 = scandir($dir); $files2 = scandir($dir, 1); print_r($files1); print_r($files2); ?>

只有一个Apache虚拟主机configuration生效

我在安装Ubuntu 14.04时使用了Apache 2.4,并且正在configurationApache“虚拟主机”,以便为不同的主机名提供不同的内容。 我正在尝试configurationApache,以便在尝试使用主机名(www.)example1.com访问服务器时,将提供/var/www/example1内容; 但是,如果尝试使用IP地址或除(www.)example1.com之外的任何其他主机名(例如,通过IP直接访问IP地址或通过指向此IP的任何其他主机名)访问服务器,内容从/var/www/html代替。 我在/etc/apache2/sites-available下有以下configuration文件: /etc/apache2/sites-available/example1.conf : <VirtualHost example1.com:80> DocumentRoot /var/www/example1 ServerAlias www.example1.com ErrorLog ${APACHE_LOG_DIR}/ex1_error.log CustomLog ${APACHE_LOG_DIR}/ex1_access.log combined </VirtualHost> /etc/apache2/sites-available/000-default.conf : <VirtualHost *:80> DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> 但是,当我尝试通过直接访问或通过指向此IP的其他主机名访问网站时,我从/var/www/example1获取内容,而不是从/var/www/html 。 这里可能是什么问题,我该如何解决?

mod_security过于严格的规则?

我刚刚在我的服务器上安装了mod_security,但是每个页面都被禁止了一个错误。 我觉得规则是严格的,不是? 怎么可以改变它? 这是我日志上的最后一行 Message: Access denied with code 403 (phase 2). Pattern match "([\\~\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\-\\+\\=\\{\\}\\[\\]\\|\\:\\;\"\\'\\\xc2\xb4\\\xe2\x80\x99\\\xe2\x80\x98\\`\\<\\>].*?){8,}" at REQUEST_COOKIES:_iub_cs-856516. [file "/usr/share/modsecurity-crs/activated_rules/modsecurity_crs_41_sql_injection_attacks.conf"] [line "157"] [id "981172"] [rev "2"] [msg "Restricted SQL Character Anomaly Detection Alert – Total # of special characters exceeded"] [data "Matched Data: \x22 found within REQUEST_COOKIES:_iub_cs-856516: {\x22consent\x22:true,\x22timestamp\x22:\x222016-02-25T03:39:02.641Z\x22,\x22version\x22:\x220.11.36.4\x22,\x22id\x22:856516}"] [ver "OWASP_CRS/2.2.8"] [maturity "9"] [accuracy "8"] [tag "OWASP_CRS/WEB_ATTACK/SQL_INJECTION"] […]

在Debian上的VirtualHost中设置php_value挤压Apache 2.4.10 + mod_proxy_fcgi + php-fpm?

将我们的服务器更新到Debian Jessie(8.3)后,我将Apache 2.4.10从mpm_worker / mod_php切换到mpm_event / proxy_fcgi / php-fpm。 我为所有虚拟主机configuration了切换,如下所示: # cat conf-enabled/php5-fpm.conf <FilesMatch \.php$> SetHandler "proxy:unix:/var/run/php5-fpm.sock|fcgi://localhost/" </FilesMatch> 我也禁用了mod_php。 因此,Apache不会让我在VirtualHosts文件中有php_admin_value / php_value / php_flag指令。 Invalid command 'php_value', perhaps misspelled or defined by a module not included in the server configuration 我读了一些关于.user.ini文件,但是听起来不像我需要设置的指令会被支持,而且我只是成功地从我的站点中删除了所有的.htaccess文件,这似乎是一个落后(和不兼容)的方法。 另一个常见的build议是为每个VirtualHost创build一个独特的池,但是这个问题有两个原因: 设置的复杂性 – 现在,configuration是非常简单的 从套接字切换到TCP? 我正确的是,我需要一个独特的TCP端口每池? 我还需要一个独特的套接字每池? 内存分配! 这台服务器没有我想要的那么多的RAM。 在服务器上访问次数较less的网站上有一堆php-fpm实例可能会浪费,这似乎很浪费。

systemd不会注意到Apache启动

我的debian系统已经感染了systemd病毒… 当我发出“服务apache2启动”命令来启动apache,它认为它失败了,但Apache运行得很好。 所以“service apache2 stop”什么都不做,因为系统认为apache还没有启动。 要停止apache,我必须发出“killall apache2” # service apache2 start Job for apache2.service failed. See 'systemctl status apache2.service' and 'journalctl -xn' for details. # systemctl status apache2.service â apache2.service – LSB: Apache2 web server Loaded: loaded (/etc/init.d/apache2) Active: failed (Result: exit-code) since Thu 2016-06-09 15:49:43 CEST; 32s ago Process: 7513 ExecStart=/etc/init.d/apache2 start (code=exited, status=1/FAILURE) […]

如何确保顺利过渡到让我们encryptionSSL证书?

我已经在Ubuntu 14.04上运行了LAMP,几乎一年前我为我的Web服务器安装了SSL(TLS 1.2)证书,所以我的网站只能在HTTPS协议下运行。 10月8日证书到期。 从现在开始,我想安装并使用Let's Encrypt。 他们有关于如何使用Let's Encrypt的相当不错的教程,所以(希望)我不会有任何问题。 但我现在不知道该怎么办。 我必须等到我的旧证书过期后吗? 或者我应该继续进行让我们encryption安装尽快? 如果是后者,则会出现另一个问题。 如何摆脱旧的证书? 我的意思是,将两个并排使用可能不是一个好主意。 总之,太多的东西我不明白。

我应该关心“服务器证书不包含与服务器名称匹配的ID”吗?

我有以下configuration: <VirtualHost 1.2.3.4:443> ServerName mydomain.com ServerAlias www.mydomain.com … </VirtualHost> 我想www.mydomain.com是主要的域名,但我也希望用户能够只键入mydomain.com ,然后我redirect到www 。 所以证书名称是www.mydomain.com 。 但是,在启动apache的时候,我一直得到这个警告: AH01909:mydomain.com:443:0服务器证书不包含与服务器名称匹配的ID 一切工作正常,但我也得到了ssllabs.com A评级。 但是,这个警告还是让我感到困惑,我想知道我是否可能在这里错过了一些东西? 显然,证书的CN与服务器名称不匹配,但仍然匹配一个别名。 这是“不好的做法”还是有另一种方法来处理这不会产生这种警告? 我应该关心它吗? 最后,这只是一个警告, 可能是错的,但事实并非如此。 或者这可能导致客户端问题? 到目前为止一切工作正常,用户没有抱怨,所以我想一切工作正常。