我想加载一些用于代理配置的模块。我在下面安装了模块/etc/apache2/mods-available/xxx
我如何将它们加载到/etc/apache2/mods-enabled/xxx?
换句话说,这应该放在哪个配置中?
LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so
Run Code Online (Sandbox Code Playgroud) 安装 apache 2 服务器、php5、mysql 和 phpMyAdmin 最正确的方法是什么?
我这周安装了它,我遇到了很多没有解决方案的问题,所以现在我重新安装了 Ubuntu 13.04 我不想再犯同样的错误。
因此,我使用本教程设置了我的服务器,并且当我使用服务器的 IP 作为地址输入地址时 test.php 文件正常工作时
http://1.2.3.4/test.php
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用虚拟主机,浏览器只会提供下载文件而不是执行它。所以这:
http://blog.mydomain.com/test.php
Run Code Online (Sandbox Code Playgroud)
提供下载文件而不是执行脚本。
我在 /etc/apache2/apache2.conf 中为虚拟主机使用的代码如下:
Include /etc/phpmyadmin/apache.conf
Include /etc/apache2/mods-available/php5.conf
<VirtualHost *:80>
DocumentRoot /path/to/vhosts/folder1
ServerName www.mydomain.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /path/to/vhosts/folder2
ServerName blog.mydomain.com
</VirtualHost>
NameVirtualHost *:80
Run Code Online (Sandbox Code Playgroud)
虽然我不得不说,当我重新启动 apache2 服务器时,我收到一条警告消息:
[....] Restarting web server: apache2
[Sun Jan 19 13:33:40 2014] [warn] NameVirtualHost *:80 has no VirtualHosts ... waiting [Sun Jan 19 13:33:41 2014] [warn] NameVirtualHost *:80 has no VirtualHosts
Run Code Online (Sandbox Code Playgroud) 预先感谢您提供的任何帮助。我已经自学了使用 linux (ubuntu)、apache、虚拟主机和一些关于安全性的知识,尽管我还没有将它们无缝地组合在一起。
我还从过去犯的错误中学到了艰难的方法,即没有正确设置用户帐户和站点/虚拟主机。我以 root 身份 ssh 进入服务器(我知道,这很糟糕),并手动创建了所有虚拟主机和文件,因此都归 root 所有。我的所有其他虚拟主机中都插入了旧版本的 joomla 漏洞和恶意垃圾邮件代码。
我正在迁移到新服务器,并且正在寻找有关设置可以访问它们的虚拟主机和用户帐户的正确步骤。因为我们使用 3rd 方软件,所以我们有时需要其他人通过 ftp 进入该站点以调查他们的网站文件。
我们当前的服务器是 10.04 版,但是新服务器是 12.04 版。所有网站文件都设置在
/home/www/site1.com
/home/www/site2.com
/home/www/site3.com
等等
简而言之,我想这就是我所追求的。
如何正确设置虚拟主机和用户,使其只能访问自己的文件,而不能访问服务器上的任何其他虚拟主机。例如,如果该站点被恶意代码利用,它就无法感染服务器上的其他站点
我将如何设置用户,以便他们只能 ftp 进入他们给定的文件,而不能访问任何其他站点。
如前所述,有许多文章详细介绍了如何执行这些步骤中的任何一个,但没有任何文章能够将它们无缝地结合在一起。
非常感谢任何人都可以提供的帮助。请随时询问您可能需要提供建议的任何其他信息。我目前正在按照教程来设置 chroot,但是我担心我没有正确执行此操作,因为我在此过程中发现了一些不一致之处。我也在调查 jailkit。
我想在我的 Ubuntu (14.04) 上设置一个本地 Web 服务器。所以我安装了所有软件以获得 LAMP 服务器。
问题是我在创建虚拟主机时做错了。我想在我的本地主机上创建不同的子域。例如,site1.localhost 和 site2.localhost。
在我的/var/www/目录中,我创建了一个符号链接“site1”,指向/home/user/Workspaces/site1.
在我的 Apache error.log 文件中,我收到以下错误。
[core:error] [pid 12679] [client 127.0.0.1:59006] AH00037: Symbolic link not allowed or link target not accessible: /var/www/site1
Run Code Online (Sandbox Code Playgroud)
在我的 apache 配置中,我有:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Run Code Online (Sandbox Code Playgroud)
所以我认为文件夹的权限有问题。我在谷歌上搜索,发现有几个人有同样的问题,但那里提供的所有答案都没有解决。我在 www-data 组中添加了自己的用户名等等。
所以ls -la /var/www返回:
total 12
drwxrwsr-x 3 user www-data 4096 okt 13 19:08 .
drwxr-xr-x 14 root root 4096 okt 1 22:50 ..
drwxr-xr-x 2 …Run Code Online (Sandbox Code Playgroud) 到目前为止,我一直在努力解决权限问题,并发布了另一个问题,但确定了问题所在,目前还没有任何解决方法。
我的设置:
sudo useradd -r -s /bin/false USERNAME,这些用户用于访问本地网络共享文件夹,即我网络上的计算机连接到 /var/www 文件夹,使用 Samba 共享。我的问题:
目前,当我/var/www/html使用网络上的任何计算机在(例如:创建文件夹 /var/www/html/testsite1)上创建一个新文件夹时,该文件夹自动归boris:www-data(“boris”是我的 ubuntu 桌面安装上的主要管理员用户)所有,并且它ls -l在新创建的文件夹上运行时确实显示了 boris:www-data ),这导致了我当前设置的问题(主要使用 LifeInTheGrid 为 wordpress 使用 Duplicator 插件)。但是,我的/var/www和我/var/www/html的都归我所有www-data:www-data
因此,我想知道如何:
将 /var/www 和 /var/www/html 下所有文件和目录的所有权更改为 www-data:www-data
确保我将与我的网络中的任何用户一起创建的任何文件或文件夹将自动归 www-data:www-data 所有(这包括由 php 脚本自动创建的文件,因为如果我没有错)。
有没有办法做到这一点?
注意:我是 Linux 和命令行相关的超级新手,但我很快就赶上了。
注 2:umask 已经设置为 0002
编辑:
试过这个:
sudo chown -R www-data:www-data /var/www/ …Run Code Online (Sandbox Code Playgroud) 我正在使用 Ubuntu 16.04 LTS amd64。我已经安装了 LAMP(php5.6、apache2、mysql)和 Composer。我从github下载了我的laravel项目。我想更新 Composer 以启动本地服务器php artisan serve。但是当我想运行时localhost,终端说:
heartprogrammer@heartprogrammer-desktop:/var/www/kstu$ php artisan serve
PHP Warning: require(/var/www/kstu/bootstrap/../vendor/autoload.php): failed to open stream: No such file or directory in /var/www/kstu/bootstrap/autoload.php on line 17
PHP Fatal error: require(): Failed opening required '/var/www/kstu/bootstrap/../vendor/autoload.php' (include_path='.:/usr/share/php') in /var/www/kstu/bootstrap/autoload.php on line 17
Run Code Online (Sandbox Code Playgroud)
我尝试更新 Composer,但它说:
heartprogrammer@heartprogrammer-desktop:/var/www/kstu$ composer update
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- …Run Code Online (Sandbox Code Playgroud) 这是我的场景:
Apache 在启用 SSL 并在端口 443 上安装证书的情况下完美运行。
我也想在同一台机器上安装 nginx。作为功能性反向代理和端口 81 或 8443 上的服务器(使用与 apache 相同的证书)
我发现了很多解决方案,将 nginx 作为主服务器,将 apache 作为辅助服务器。我不想弄乱我现有的 apache 配置,所以 nginx 对我来说是次要的。
当我尝试启动时,xampp出现以下错误:
sudo /opt/lampp/lampp start
Starting XAMPP for Linux 5.6.30-0...
XAMPP: Starting Apache.../opt/lampp/share/xampp/xampplib: line 22: netstat: command not found
/opt/lampp/share/xampp/xampplib: line 22: netstat: command not found
ok.
XAMPP: Starting MySQL.../opt/lampp/share/xampp/xampplib: line 22: netstat: command not found
ok.
XAMPP: Starting ProFTPD.../opt/lampp/share/xampp/xampplib: line 22: netstat: command not found
ok.
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题,xampplib我怎样才能让它xampp工作?
我将 Ubuntu 服务器 16.04.2 与 Apache2 一起使用,我在其上存储我的个人网站。
为了启用/etc/apache2/sites-available(除了000-default.conf和ssl-default.conf)下的所有 conf 文件,我转到/var/www/html并执行a2ensite.
然后我被告知:
Your choices are:
000-default default-ssl domain.tld1 domain.tld2 domain.tld3 domain.tld4
Which site(s) do you want to enable (wildcards ok)?
Run Code Online (Sandbox Code Playgroud)
然后我做了Ctrl+C旨在执行其他事情。
我正在寻找一种方法来自动启用所有站点 conf,而无需注意特定的 --- 我只想运行一个命令来启用我自己添加的所有站点 conf。
apache2 ×10
php ×4
virtualhost ×3
mysql ×2
permissions ×2
automation ×1
chown ×1
command-line ×1
composer ×1
installation ×1
lamp ×1
nginx ×1
phpmyadmin ×1
samba ×1
server ×1
ssl ×1
users ×1
xampp ×1