我有一个testing服务器(webtest.example.com)和一个在线服务器(www.example.com)。 我也有example.org,example.net等我希望那些redirect到example.com。 我也想要任何非www条目redirect到www。 基本上,我只想知道是否有更高效(即更less线路)的方式来处理这个问题? RewriteCond %{HTTP_HOST} !^www\.example\.com$ RewriteCond %{HTTP_HOST} !^webtest\.example RewriteRule ^(.*)$ http://www.example.com%{REQUEST_URI} [L,R=301] RewriteCond %{HTTP_HOST} !^webtest\.example\.com$ RewriteCond %{HTTP_HOST} ^webtest\.example RewriteRule ^(.*)$ http://webtest.example.com%{REQUEST_URI} [L,R=301] 似乎也许会有一种方法将2个块合并成一个块。
我正在testing一个坦率而过时的(遗留的,你能做什么?)CentOS / Apache / MySQL / PHP / WordPress服务器的一个部分备份,通过一个新的相关软件包复制到一个虚拟机。 在经历了许多考验和磨难之后,我已经到了能够成功从http://<site-domain-name>/ (通过主机文件shenanigans进入本地主机)的好的200 OK响应的地步。 不幸的是,身体是零长度的,日志基本上是空的。 phpinfo()报告display_errors , display_startup_errors和log_errors全部打开,并且error_log被设置为/var/log/php_error ,它不存在; error_reporting是一个不错的整洁32767.报告的MySQL,PHP和Apache版本或多或less是预期的:5.0.95,5.3.29,2.2.23; WordPress的是3.9.2。 /etc/httpd/logs/error_log , /etc/httpd/logs/defSite_error_log (特定于虚拟主机)和/etc/httpd/logs/defSite_access_log (也是虚拟主机 -具体)都存在,并间隔写入; 虽然错误日志被设置为debugging级别,但是无论是在时间上还是在内容方面,都没有真正感兴趣的东西出现。 目录(和子目录)中的所有PHP文件都由apache用户拥有,我已经validation了httpd工作进程正在运行,并且都是-rwxr–r– 。 我已经validation了MySQL连接信息在wp-config.php中是正确的。 mysql,mysqli和pdo_mysql都是在phpinfo()输出中启用的。 xdebug + WinCacheGrind表示,PHP在wp-blog-header.php中花费了2001ms,它在wp-settings.php和friends中花费了1830ms,这对于静态页面来说似乎有些过分,尽pipe其中一个在一台慢速笔记本电脑的虚拟机上渲染; 没有什么叫die() 。 /wp-admin/options.php 302-redirect到/wp-admin/upgrade.php ,然后表示不需要升级(?),并有一个指向站点根目录的继续链接。 另一方面,/ /wp-login.php看起来似乎是合理的,除了它使用活动站点的IP地址。 基于此,我进入数据库,并将数字IP切换到域名(即,在wp_options siteurl和home )。 现在/wp-admin/upgrade.php表示在继续之前需要更新数据库。 我可能错误地排除了一些东西,但让我知道我应该运行什么其他检查,我会看看我能做些什么。
我有一个应用程序本地运行在我的电脑上,可以通过浏览器和端口4848访问:localhost:4848 / xxx / xxx 我想通过我的IP将它分享给其他人。 但是,ppl只能访问我的端口80(我正在运行Apache服务器)。 那么请帮我提一些build议,我只是一个商业分析师,对于networking@ _ @没有多less了解。
在我的服务器上垃圾邮件file upload,其中开始 <?php ${"\x47\x4cO\x42A\x4c\x53"}["cgw\x71\x77\x77\x64\x79q"] 我试图find所有文件在服务器上面有string并删除文件。 为此,我正在使用以下命令。 find . | xargs grep -l -r '<?php ${/"\x47\x4cO\x42A\x4c\x53/"}' /home/ | awk '{print "rm "$1}' > doit.sh 但似乎不工作。 任何人有命令的build议,以便我可以删除所有这些恶意文件。
我在我的localhost apache上有几个虚拟主机,这里是一个configuration(其他的只是改变.localhost之前的字母) <VirtualHost *:80> ServerAdmin [email protected] ServerName dev.localhost ServerAlias dev.localhost DocumentRoot /var/www/dev ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> 它不适用于Chrome。 在其他浏览器上运行,当我在terminal上input时,它就可以工作 sudo wget dev.localhost 当我在Chrome上访问虚拟主机时,出现错误ERR_NAME_NOT_RESOLVED ,如果我没有连接到互联网,我得到了ERR_INTERNET_DISCONNECTED (我认为这不应该发生在本地主机之后) 我也尝试访问与Chrome私人模式的虚拟主机(CTRL + SHIFT + N)和访问像这样我得到DNS_PROBE_FINISHED_NXDOMAIN错误。 试图禁用所有我的扩展。 我刚刚说的一切,只是虚拟主机,因为当我访问localhost或任何文件夹里面,工作正常。 这是我的/etc/hosts文件 127.0.0.1 localhost 127.0.1.1 Henrique-Note 127.0.0.1 bobbabr.localhost 127.0.0.1 art.localhost 127.0.0.1 id.localhost 127.0.0.1 artweb.localhost 127.0.0.1 pontoagua.localhost 127.0.0.1 ibobba.localhost 127.0.0.1 fnxhenry.localhost 127.0.0.1 pipoca.localhost 127.0.0.1 […]
我们正在使用HTTPD服务器(apache)来处理客户端请求。 请求进一步代理到提供内容的应用服务器(glassfish)。 内容是静态文件(软件映像)。 以下是使用的ProxyPass指令。 ProxyPass /access/sw http://localhost:8080/access/sw 我们希望Apache能够处理静态内容,因为它释放了玻璃鱼从事其他工作。 与此唯一的问题是请求仍然需要被指向玻璃鱼检查业务逻辑。 在运行业务逻辑之后,glassfish服务器应该向Apache发送一个响应,确认允许客户端下载软件映像。 它也可以发送一个负面的回应给Apache拒绝客户端请求。 这怎么可能实现? 有没有任何Apache模块来处理这个? 只是重申,以下是可以实现的吗? Request from client -> Apache -> Glassfish (runs the business logic) -> responds back to Apache if client should be allowed to download -> Apache serves the static file depending on glassfish response PS – 客户端无法处理redirect请求。 客户端发送一个GET
我有一个树莓派2设置为运行Apache的Web服务器。 我有SSH设置,以便我可以在局域网上连接到它。 我想远程连接到Pi,以便我可以直接编辑index.html文件,或者下载index.html文件,将其从服务器上删除,然后上传编辑后的版本。 当我的路由器已经将端口转发到Pi时,我找不到解释如何做到这一点的任何地方。 我的问题是,我该怎么做? 谢谢。
我知道如何在apache httpd.conf文件中设置多个主机,但是可以使其成为dynamic的。 如果我把我的文件夹放在这样的目录中。 c:\ development\ websites\ SiteA SiteB SiteC 我可以用这种方式写我的httpd.conf文件吗? <VirtualHost *:80> ServerName *.example.com DocumentRoot "c:/development/Websites/%1/" </VirtualHost> 其中%1或其他variables标记是SiteA,如果用户访问sitea.example.com等或事件,如果siteA必须是一个完全合格的域是好的。
我在一个Apache服务器上通过Ratche运行ZMQ'push'接口,这个服务器在命令行上运行得非常好,并且按照我想要的方式与我的服务器交互。 这是代码 //script1.php <?php echo exec('php script2.php'); ?> //script2.php <?php $entryData = array( 'category' => 'modelLmdap' , 'job_id' => '1234' , 'text' => '' , 'status' => '' ); $context = new ZMQContext(); $socket = $context->getSocket(ZMQ::SOCKET_PUSH, 'my pusher'); $socket->connect("tcp://localhost:5555"); $socket->send(json_encode($entryData)); ?> 当我执行script1.php时,在服务器窗口中看到一个popup窗口,显示“请求已logging”。 但是,如果我试图通过浏览器运行它,我得到一个空白页面,并在服务器上没有输出。 我环顾了这可能是由于Apache无法在命令行运行,而解决scheme是将以下内容添加到我的sudoers(使用sudo visudo): www-data ALL=NOPASSWD: ALL 依然没有! 一个空白页。 我把命令切换到exec(),我得到这个错误: 致命错误:第8行/ home / username […]
我正在使用mod_xsendfile (版本>= 0.10 )在Apache服务器上提供大型audio文件。 当我使用header( 'HTTP/1.1 200 OK' );时,文件服务正常header( 'HTTP/1.1 200 OK' ); 但是,这些文件是完整的服务。 因为我想允许访问者在audio文件中查找,所以我接受来自客户端的Range请求。 这是我遇到问题的地方。 当我使用header( 'HTTP/1.1 206 Partial Content' ); ,PHP脚本以Content-Length: 0响应。 这对我来说很奇怪,因为在Content-Range响应中,正确地提到了请求的范围和文件的总文件大小。 例如: Content-Length:0 Content-Range:bytes 0-139143856/139143857 我的PHP脚本用来发送这两个头的头是: $filesize = filesize( $mix_file ); … $start = calculated from HTTP_RANGE or 0; $end = calculated from HTTP_RANGE or $filesize – 1; … header( 'Content-Length: […]