我正在尝试设置一个 apache-ubuntu-php 网络服务器。我的网络服务器将托管多个 SSL 站点,每个 SSL 站点都有自己的 IP 地址(除非有更好的方法来做到这一点)。
所以我想第一步是让 apache 识别至少两个不同的 IP 地址。现在,我有一个网站的 SSL 和非 SSL 版本,分别是http://mysite.com和https://mysite.com。尽管两者目前都在我的服务器上运行,但我无法让两者都使用不同的 IP 地址。现在,两者都使用 IP 1.1.1.1。我购买了第二个 IP 地址 2.2.2.2,但https://mysite.com不接受它,firefox 抱怨错误“ssl_error_rx_record_too_long”。这是我的 2 个 vhost 文件
/etc/apache2/site-enabled/000-default
#NameVirtualHost 1.1.1.1:80
#<VirtualHost 1.1.1.1:80>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order …Run Code Online (Sandbox Code Playgroud) 如何增加 ubuntu 计算机上星号守护程序的文件限制?当我以 root 身份登录并使用 ulimit 时,它已经说无限制了。我无法以星号登录,因为该用户没有 shell 访问权限,它只是一个守护进程。
我可以看到在/proc/<asterisk proc id>/limits当前最大打开文件是 1024。我想加倍。
我什至进入 /etc/security/limit.conf 并添加
asterisk soft nofile 2048
asterisk hard nofile 2048
@asterisk soft nofile 2048
@asterisk hard nofile 2048
Run Code Online (Sandbox Code Playgroud)
然后我重新启动服务器。不过,最大打开文件数为 1024。
我还可以做些什么?
一位开发人员最近使用 TripWire 对我们的 LAMP 服务器运行了 PCI 扫描。他们确定了几个问题,并指示以下人员纠正这些问题:
问题:SSL 服务器支持 SSLv3、TLSv1、
解决方法:在httpd.conf中加入如下规则
SSLCipherSuite ALL:!aNULL:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
Run Code Online (Sandbox Code Playgroud)
问题:SSL 服务器支持 SSLv3、TLSv1 的 CBC 密码
解决方案:禁用任何使用 CBC 密码的密码套件
问题:SSL 服务器支持 SSLv3、TLSv1 的弱 MAC 算法
解决方案:禁用任何使用基于 MD5 的 MAC 算法的密码套件
我尝试在 google 上搜索有关如何构建 SSLCipherSuite 指令以满足我的要求的综合教程,但没有找到任何我能理解的内容。我看到了 SSLCipherSuite 指令的示例,但我需要对该指令的每个组件的作用进行解释。所以即使在指令中SSLCipherSuite ALL:!aNULL:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM,我也不明白例如这!LOW意味着什么。
有人可以 a) 告诉我满足我需求的 SSLCipherSuite 指令,或者 b) 向我展示一个资源,该资源清楚地解释了 SSLCipherSuite 的每个部分以及如何构建一个?
我的一个朋友在我们的 LAMP 开发服务器上安装了 VPN。以前,我们只是使用 SSH,有时还使用 SSH 公钥来避免密码提示。我的问题是,与仅使用 SSH 公钥相比,使用 VPN 的优势是什么?我可以利用哪些新功能?为什么可能需要 VPN?
我在共享托管服务提供商上运行一些网站,每月收费 10 美元。最近几个月我经历了几次停机。技术支持告诉我我的网站没有任何问题。由于同一空间上的其他帐户,服务器负载过重。如果我购买了 VPS,我会遇到更少的停机时间吗?
我最近购买了 VPS 计划。我安装了 Ubuntu 9.10、PHP5 和 Postfix。我无法让 PHP mail() 函数工作。在我的 PHP 脚本中,mail() 函数返回 true,这表明它正在工作。但是没有人收到我网站的电子邮件。
当我调用 sudo apt-get install postfix 时,postfix 的安装似乎很顺利。调用 /etc/init.d/postfix start 给了我“启动 Postfix 邮件传输代理 postfix”。调用 /etc/init.d/postfix reload 给了我错误“致命:Postfix 邮件系统未运行”。
在安装 postfix 之前,我使用的是与 PHP mail() 函数一起工作的 sendmail。
我如何调试和解决这个问题?
附加说明 我查看了 /var/log/mail.log 并发现每次调用 php 的 mail() 时都会出现以下错误
Feb 3 11:27:41 mywebsitedomain postfix/postdrop[23793]: warning: unable to look up public/pickup: No such file or directory
Run Code Online (Sandbox Code Playgroud) 我想递归地执行以下命令
sed -i 's/href=\"1\//href=\"\/1\//g' ./*
Run Code Online (Sandbox Code Playgroud)
以便它将所有子目录中的所有 href="1 替换为 href="/1。是否有一个标志可以添加到此命令中以实现我想要的结果?
我不小心在我应该提交的项目列表中添加了一个目录。现在,当我尝试运行 git rm dirname 时,出现错误
rm 'dirname'
fatal: git rm: 'dirname': Is a directory
Run Code Online (Sandbox Code Playgroud)
我尝试了以下命令git rm -rf dirname和git rm dirname --force,但这些都不起作用。他们都产生了相同的错误信息。
如何防止 dirname 被提交?
我正在使用 git 版本 1.7.0.4
谢谢
补充说明
好吧,它似乎git rm -rf dirname只在某些条件下有效。我进行了一些测试,通常可以正常工作。但是,如果dirname它本身是一个单独控制的 git 存储库,其中包含 .git 目录,它将失败。我有这个设置,因为它dirname是我的许多项目共享的 git 控制框架。
我有以下虚拟主机
// filename: /etc/apache2/sites-available/ccbbbcc
<VirtualHost 1.1.1.1:80>
ServerAdmin utopia@ccbbbcc.com
ServerName ccbbbcc.com
ServerAlias www.ccbbbcc.com
DocumentRoot /srv/www/ccbbbcc/production/public_html/
ErrorLog /srv/www/ccbbbcc/production/logs/error.log
CustomLog /srv/www/ccbbbcc/production/logs/access.log combined
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
然后我也有
//filename: /etc/apache2/sites-available/default
<VirtualHost 1.1.1.1:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
blah blah blah
Run Code Online (Sandbox Code Playgroud)
为什么当我在浏览器中输入http://1.1.1.1 时,它会带我到http://ccbbbcc.com?即使我将新网址指向 IP 1.1.1.1,网页也会从http://ccbbbcc.com提供服务。为什么我无法从 /var/www 目录提供页面?
其他症状 - ccbbbcc vhost 仅覆盖了我的其他一些 vhost。不是全部。
我确保使用 a2ensite 并重新启动 apache。
这是我的 /etc/apache2/ports.conf 的样子
NameVirtualHost 1.1.1.1:80
Listen 80
Listen 443
Run Code Online (Sandbox Code Playgroud)
我创建了一个名为 /srv/www/ccbbbcc/production/public_html/test.html 的文件,其中包含文本“Hello World”。当我输入http://ccbbbcc.com/test.html 时,页面加载正常。当我输入http://1.1.1.1/test.html 时 …
我正在尝试学习如何使用 rsync。我想为我的生产服务器创建每日备份。
现在我运行命令
rsync -azr /var/www/* www-data@backup.server.com:/var/www
Run Code Online (Sandbox Code Playgroud)
现在假设有一天,我想将生产服务器上的 /var/www/ 目录回滚到上个月的版本。如何告诉 rsync 检索版本 N?
在阅读 rsync 仅复制 src 和 dest 之间的差异时,我认为 rsync 的工作方式类似于 Subversion,您可以将更改提交到目标,并跟踪每个版本,并可以选择随时检出任何版本。这是 rsync 的工作方式吗?这就像颠覆,但对于整个服务器?那会很棒,因为这意味着我不必为每晚备份做完整的 ssh 副本。