服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

通过nginx代理将哈德森映射到子域

我现在正在尝试将nginx设置为Hudson的反向代理,以便可以访问 http://build.example.com 直。 我已经在Tomcat上安装了Hudson,并validation了我可以访问Hudson http://127.0.0.1:8080/hudson 在http://build.example.com/hudson上访问hudson是非常简单的。 但是,当我试图设置代理重新映射/ hudson目录,事情开始出错。 没有正在加载的CSS或图像文件。 快速查看nginx访问日志告诉我,正在对/ hudson或/ hudson / static资源进行大量请求。 这些请求没有正确转发(或重写)到Tomcat。 但是经过几个小时的挖掘,我对如何解决这个简单的问题感到迷茫。 我正在使用的nginx设置看起来像 server { listen 80; server_name build.example.com; location / { proxy_pass http://127.0.0.1:8080/hudson; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } 有人可以解释一下吗? 安装起来非常简单,但我似乎无法在networking上的任何地方find解决scheme。 更新 对所有花时间回答这个问题的人表示衷心的感谢。 在尝试了各种解决scheme之后,我认为处理这个特定问题最直接的方法是要么… A)保持独立如@VonCbuild议,让它留在一个子目录。 这是直截了当的,我们可以肯定,没有什么会打破。 要么… B)将应用程序部署到tomcat webapp目录的根目录如果你想用tomcat安装多个webapps,这可能不是最好的做法。 但是pipe理员可能想要设置一个单独的tomcat安装,只是为了运行Hudson / Jenkins。 Tomcat不能像不同的用户一样运行不同的托pipe应用程序,任何为CI设置Hudson / Jenkins的人都可能希望以特定的用户身份运行它(例如“构build”)。 […]

只用bin-log文件恢复MySQL数据库

这是突变: 我们正在与我们公司合作开发testingpipe理的Web应用程序: TestLink 。 一个团队正在为此工作超过1个月。 昨天,另一个团队也想开始使用testLink,所以我被要求为他们安装。 安装是在第一个TestLink运行的服务器上进行的,我使用的是运行testLink的WampServer.2.0 ,所以我开始重新安装,不幸的是在同一个WampServer上。我有点累,我没有在安装中提到,我给第二个TestLink与第一个相同的数据库名称 ..安装成功…但等待! 第一个数据库中的所有数据都是丢失的! 由一个空的和新的数据库覆盖..! 我觉得有人肯定会杀了我! 所以我开始googling,但因为没有数据库备份,因为安装第一TestLink ..我真的觉得我没有解决scheme..我试图运行软件备份覆盖和意外删除的文件,这并没有帮助..课程… 我在这个博客中发现了一个关于MySQL二进制日志的故事,但是看起来至less有一个备份需要恢复丢失的数据。 在我的my.ini文件的configuration中, log-bin=mysql-bin行被取消注释,我可以在mysql \ data \下find如下所示的文件: mysql-bin.00000x 我使用mysqlbinlog –start-datetime="2011-04-01 00:00:00" mysql-bin.000006来运行mysqlbinlog命令,这使得我的屏幕看起来像一个matrix,我可以识别线看起来像TestLink的命令,该命令似乎成功结束..但没有..表中的数据库保持不变,空… 我错过了什么吗? 有希望之光吗? 请帮忙..

写访问EVERYONE工作,IUSR,IIS_IUSRS,DefaultAppPool不起作用。 为什么?

好。 这里我们试图在Windows Server 2008 R2的IIS 7.5中设置一个经典的ASP网站。 在网站的根目录下有一个名为dbc的文件夹,它具有一个用于在处理每个页面时读取和写入某些信息的文件。 问题是,如果我授予IUSR写权限,IIS_IUSRS写权限,或DefaultAppPool写权限,我得到“访问path'E:.. \ websiteroot \ dbc \ filename.txt'被拒绝” 但是,如果我授予每个人在该dbc文件夹的写访问权限,那么我不会得到任何错误,一切似乎完美。 更多信息:网站以经典stream水线模式运行,匿名身份validation已启用(也许这是唯一的身份validation启用)。我尝试使用IUSR帐户以及应用程序池标识的匿名身份validation。 在我的情况下,ApplicationPoolIdentity是网站的身份validation。 我们使用COM +作为文件I / O。 和经典的ASP Server.CreateObject来实例化一个对象。 COM +作为networking服务运行。 思考? 我不想授予所有人的写入权限。 我错过了什么吗? 解决:这是我做的。 我的网站名为CipherDemo运行在IIS 7.5中的AppPoolIdentity下,可以通过Identity IIS AppPool \ CipherDemofind。 我用ICACLS在该文件夹上给RW权限。 而实际上正在执行文件I / O的COM +正在networking服务标识下运行。 当我使用进程监视器来跟踪访问拒绝错误时,它变成了networking服务只有该文件夹的读取权限。 我使用ICACLS“foldername”/ grant:r“NT AUTHORITY \ NETWORKSERVICE”:( OI)(CI)RXW / T授予对该文件夹的写入权限。 解决了。 我的意图是,因为网站作为CipherDemo身份运行,这将是用于通过COM +访问该文件的帐户。 但是,发现COM +仍然可以在自己的身份界限上工作,这是令人尴尬的。

Gitolite克隆不按预期工作

我正在运行一个Debian系统,并且最近使用DEB软件包安装了gitolite。 这是我的问题: 我已经尝试克隆gitolite-admin.git存储库(用于为所有希望gitolitepipe理的存储库configurationgitolite安装)。 我的第一次尝试正是如何指示说: git clone gitolite@server:gitolite-admin 我收到以下错误: fatal: 'gitolite-admin' does not appear to be a git repository fatal: The remote end hung up unexpectedly 注意:如果我用gitolite-admin.gitreplacegitolite-admin,也会发生同样的情况 但是,当我做到以下几点: git clone gitolite@server:~/repositories/gitolite-admin.git 该行成功将存储库克隆到本地工作站。 现在,我没有问题添加额外的文本到文件path,但是我被告知,这是不正确的文档。 以下链接( http://sitaramc.github.com/gitolite/doc/3-faq-tips-etc.html )指出:“在git克隆中的repo名称开头添加存储库”是一个常见的错误/错误。 它还指出:“事实上,gitolite在内部预装$ REPO_BASE,所以你不应该也这样做!” 我的.gitolite.rc文件包含以下行$ REPO_BASE: [Located in /home/gitolite/.gitolite.rc] $REPO_BASE="repositories"; 我的问题是, 我的configuration出了什么问题,导致$ REPO_BASE不能预定我的git克隆? 如果您需要更多信息,请留下评论,说明您需要什么信息,我会很乐意。 其他说明: git版本:1.7.2.3 gitolite版本:1.5.4-2〜bp(这是从lenny-backports,因为我使用Debian Lenny和gitolite不符合Lenny标准) Debian的安装创build用户“gitolite”来pipe理gitolite回购。