假设我有以下子域及其自己的文档根等:
monad2.mysite.com
Run Code Online (Sandbox Code Playgroud)
我希望所有请求都代理到一个 IP(例如193.159.3.129
),但它们必须通过服务器mysite.com
(假设monad2
在同一台服务器上)。
我有以下(htaccess)配置,它适用于子域,但无法代理任何其他请求......
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://193.159.3.129/$1 [P]
Run Code Online (Sandbox Code Playgroud)
我的问题是,虽然它确实适用于http://monad2.mysite.com/a.php
(url 保持不变),但它不适用于(urlhttp://monad2.mysite.com/a/b
转换为http://193.159.3.129/a/b
)之类的请求。请注意,后一个地址显示了代理服务器的目录列表,这是正确的,只是子域更改为 ip。
另外,我认为这个系统肯定不能用于 HTTPS 请求,对吗?
编辑:经过更多的故障排除后,我确切地找到了问题发生的时间。每当我尝试访问没有最后一个斜杠的目录时,代理就会失败,我最终会得到一个 IP。一些例子:
Original | Result
--------------------------------+--------------------------------
http://monad2.mysite.com | http://monad2.mysite.com
http://monad2.mysite.com/a/ | http://monad2.mysite.com/a/
http://monad2.mysite.com/a | http://193.159.3.129/a/ <- !
http://monad2.mysite.com/a.php | http://monad2.mysite.com/a.php
Run Code Online (Sandbox Code Playgroud) 我打算将目录的所有权更改为apache:apache
,但我最终运行了:
chown -R apache:apache /
Run Code Online (Sandbox Code Playgroud)
坏的!很坏!当它开始说时,我知道发生了什么:
chown:更改`/proc/2694/fd/48'的所有权:权限被拒绝
那时我停止了一切(Ctrl + C)。
我目前的系统是一台运行 Virtualbox 的服务器,运行 CentOS 5。这个问题发生在 VM 内部。
目前似乎一切正常,但我还没有重新启动系统,老实说,我担心如果我做了一些事情会崩溃。
我不知道chown
的顺序,我是否应该担心并假设重启后会发生某些事情?有没有办法在不依赖备份的情况下从这个问题中恢复?我每天都有一个,但我认为可能有更简单的方法。
请在此处查看(有些)相关主题。
前段时间,我在 IRC 会话中被侮辱/嘲笑(正如预期的那样),因为我以 root 身份登录来安装 ruby。
显然,以 root 身份安装服务是正常的*,但不是从 root 帐户运行的服务。这是可以理解的 - 您不希望在 apache 中的访问冲突允许 root 权限。
*这与 IRC 上令人敬畏的人相矛盾......去图。
所以我想主要的问题是,为什么要安装许多服务的说明(最近,在 nodejs、ruby 和 cloud9ide 上看到过),并假设您在安装它们时不是 root 用户?
例如,就在上周,我安装了 cloud9ide 但无法使其工作,因为它明确禁止我以 root 身份运行它。然而,没有人提到任何关于它的事情。我通过运行解决了这个问题:
su -s /bin/sh apache -c "node /var/www/cloud9/server.js -l 192.168.1.117 -p 3131 -w /var/www/html"
Run Code Online (Sandbox Code Playgroud) 基本上,我们在服务器上运行 Dropbox 以保持一些文件同步。
它运行良好,除非 Dropbox 必须自己编写文件。它一直以 root 身份写入它们,我的网络服务器以后无法提供这些文件。
当前的修复是手动的chown -R apache:apache /var/www/html
,但它是不必要的和麻烦的,服务器用户每次被禁止时都必须打电话给我来修复它。
所以,问题是,如何让 dropbox 以用户/组的身份写入文件apache
?
软件:CentOS 5.6、daemonized dropbox server、apache