标签: apache2

Apache 虚拟主机的推荐工作流程?

我在我的 Ubuntu 机器上做了很多本地 Web 开发工作,我不断在 Apache 中设置虚拟主机。我不需要进行硬核服务器管理,但我厌倦了手动将配置指令添加到 /etc/apache2/sites-available/ 中的文件然后更新 /etc/hosts 文件的重复过程。

有没有更有效或更自动化的方法来完成我所缺少的所有这些?也许像rapache这样的东西,但这实际上有效吗?

virtualhost apache2 webserver

8
推荐指数
1
解决办法
1968
查看次数

如何正确设置和保护生产 LAMP 服务器?

我已经执行了一个普通的 Ubuntu Server 11.04,通过系统安装安装了 LAMP、SAMBA 和 SSH。但是我在设置虚拟主机并使系统足够安全以将服务器暴露给网络时遇到了一些麻烦。

到目前为止,我已经在一定程度上遵循了本教程

我有 3 个站点,/etc/apache2/sites-available除了不同的站点名称外,所有站点都如下所示:

<VirtualHost example.com>
   ServerAdmin webmaster@localhost
   ServerAlias www.edunder.se
   DocumentRoot /var/www/sites/example
   CustomLog /var/log/apache2/www.example.com-access.log combined
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

我已经使用命令启用了它们,a2ensite所以我在/etc/apache2/sites-enabled.

我的/etc/hosts文件有这些行:

127.0.0.1 localhost
127.0.1.1 Ubuntu.lan Ubuntu
127.0.0.1 localhost.localdomain localhost example.com www.example.com
127.0.0.1 localhost.localdomain localhost example2.com www.example2.com
127.0.0.1 localhost.localdomain localhost example3.com www.example3.com
Run Code Online (Sandbox Code Playgroud)

而且我只能从浏览器访问其中一个(我在服务器上安装了lynx用于测试目的)所以我想我没有正确设置它们:)

我应该如何继续获得安全和正确的设置?我也使用 MySQL,我认为如何设置 Ubuntu 服务器以(安全地)从互联网上可用?足以安全地设置 SSH。请帮助我更好地理解 Apache 配置,因为我是设置自己的服务器的新手(我之前只运行过 XAMPP),请就我应该如何设置防火墙提出建议:D

server 11.04 apache2

8
推荐指数
2
解决办法
6856
查看次数

无法通过套接字'/var/run/mysqld/mysqld.sock'连接到本地MySQL服务器

我刚刚安装了 appache、MySQL 和 PHP,在安装过程中,系统提示我输入 MySQL root 用户密码,但是当我启动 MySQL 时,它弹出错误,我似乎无法找到解决方法,大多数我读过的解决方案并没有解决它,而且,我发现 /var/run/mysqld 路径甚至不存在,我的 php 还需要套接字连接到我的数据库。

mysql php apache2

8
推荐指数
3
解决办法
8万
查看次数

Apache2 服务器未启动

我使用以下方法安装了 Apache 2:

sudo apt-get install Apache2
Run Code Online (Sandbox Code Playgroud)

然后尝试以以下方式启动它:

sudo service Apache2 start
Run Code Online (Sandbox Code Playgroud)

但最终得到:

Failed to start Apache2.service: Unit Apache2.service not found.
Run Code Online (Sandbox Code Playgroud)

有什么帮助吗?谢谢

apache2

8
推荐指数
1
解决办法
7万
查看次数

无法访问 phpmyadmin (apache ok, php ok)

当我去时,localhost/phpmyadmin我收到 apache“未找到”错误(404)。但是,我可以加载 html 页面,并运行 php 页面(例如<?php phpinfo(); ?>)。并phpmyadmin已安装。

balter@homedevbox:~$ aptitude search phpmyadmin
i   phpmyadmin                                               - MySQL web administration tool
Run Code Online (Sandbox Code Playgroud)

我还安装了标准的 ubuntu LAMP 堆栈并为 mysql 和所有这些设置了密码。

可能是什么问题呢?

编辑: 这是我的phpmyadmin文件所在的位置。

balter@homedevbox:/var$ cd /
balter@homedevbox:/$ sudo find . -type d -name phpmyadmin
./var/lib/mysql/phpmyadmin
./var/lib/phpmyadmin
./etc/phpmyadmin
./usr/share/phpmyadmin
./usr/share/dbconfig-common/scripts/phpmyadmin
./usr/share/dbconfig-common/data/phpmyadmin
./usr/share/doc/phpmyadmin
Run Code Online (Sandbox Code Playgroud)

server mysql php apache2 phpmyadmin

8
推荐指数
1
解决办法
2万
查看次数

创建新的 ssh 用户帐户以仅访问特定文件夹

我有一个在 ubuntu 16.04 上运行的 apache2 服务器,现在每次我访问特定文件夹中的项目文件时,我都使用 root 用户运行 php 函数并编辑一些文件,完成后我需要chown -R www-data:www-data .在终端内运行,因为在我运行后我的 php 函数文件所有者将成为 user:user (root:root)。我需要的是:

  1. 为我的服务器创建新用户
  2. 当使用 ssh 访问我的服务器时,此用户将自动位于特定文件夹中
  3. 授予此用户在此特定文件夹中执行任何操作的权限

例如,创建一个名为tonya的用户,当有人使用用户tonya 访问服务器时ssh sonya@server.com,他将被重定向到/var/www/specific_folder,用户 tonya 可以在此文件夹中执行任何操作,并且当 tonya 将 php 文件所有者或文件夹设置为tonya:www-data它时就像我将文件所有者设置为www-data:www-data

server ssh php permissions apache2

8
推荐指数
1
解决办法
2万
查看次数

升级到 18.04 后 PHP 显示为纯文本

我刚刚升级到 Ubuntu 18.04。现在 apache 将我网站的 php 作为纯文本 php 提供。我已经尝试过: 为什么我的 PHP 文件显示为纯文本?(在 Stack Overflow 上)PHP 7 和 apache 显示纯文本并且无法重新启动。安装的php包是:

php              php7.2-cli       php7.2-fpm       php7.2-mbstring  php7.2-pgsql     php7.2-sqlite3   php7.2-zip       php-curl         php-igbinary     php-pgsql        php-xml
php7.2           php7.2-common    php7.2-gd        php7.2-mysql     php7.2-readline  php7.2-xml       php-bz2          php-fpm          php-mbstring     php-soap         php-xmlrpc
php7.2-bz2       php7.2-curl      php7.2-json      php7.2-opcache   php7.2-soap      php7.2-xmlrpc    php-common       php-gd           php-mysql        php-sqlite3      php-zip
Run Code Online (Sandbox Code Playgroud)

有问题的网站之一可以在这里看到。

阿帕奇error.log

[Thu Apr 26 16:02:12.740886 2018] [mpm_prefork:notice] [pid 6504] AH00169: caught SIGTERM, shutting down

[Thu Apr 26 16:02:13.001806 2018] [mpm_prefork:notice] …
Run Code Online (Sandbox Code Playgroud)

php apache2 18.04

8
推荐指数
2
解决办法
1万
查看次数

php 在 apache2 中不起作用

从 ubuntu 16.04 更新到 18.04 后,我注意到 php-curl 不起作用,但 php 工作正常。我以为问题是apache2仍在使用php7.0而不是php7.2,所以我跑了

sudo a2dismod php7.0
sudo a2enmod php7.2
sudo systemctl restart apache2
Run Code Online (Sandbox Code Playgroud)

现在 php 不起作用,但呈现 html 代码...

这将返回一个空白页:

<?php phpinfo(); ?> 
Run Code Online (Sandbox Code Playgroud)

我使用在 php:phpinfo -manual 页面中找到的版本再次检查了我的 phpinfo() 实现,在下面重复,仍然不适用于 apache,但是当我在 bash 中运行以下时它确实有效

my-machine:~$ php public_html/info.php
Run Code Online (Sandbox Code Playgroud)

这是http://php.net/manual/en/function.phpinfo.php的编辑版本

<?php    
phpinfo();
// Show just the module information.
// phpinfo(8) yields identical results.
phpinfo(INFO_MODULES);
?>
Run Code Online (Sandbox Code Playgroud)

我也试过

sudo update-alternatives --set php /usr/bin/php7.2
Run Code Online (Sandbox Code Playgroud)

我已经按照一页中的指示编辑了 /etc/php/7.2/apache2/php.ini 如下:

short_open_tag = On
Run Code Online (Sandbox Code Playgroud)

这是有关我的设置的一些信息。

php版本

php -v
PHP 7.2.7-0ubuntu0.18.04.2 (cli) (built: Jul …
Run Code Online (Sandbox Code Playgroud)

php apache2

8
推荐指数
2
解决办法
2万
查看次数

如何在 Apache 上禁用 TLS 1.0、TLS 1.1

我在我的网络服务器中启用了 TLS 1.2。但是http://ssllabs.com表明,我已经在我的服务器中启用了 TLS 1.0 和 1.1 版本以及 TLS1.2。我修改了我的配置文件以从我的服务器禁用 1.0 和 1.1。但它没有帮助。

/etc/apache2/mods-enabled/ssl.conf

SSLCipherSuite HIGH:!SSLv3:!kRSA:!kECDH:!ADH:!DSS
SSLHonorCipherOrder on
SSLProtocol -all +TLSv1.2
Run Code Online (Sandbox Code Playgroud)

我的 Apache 服务器中有多个虚拟主机。在每个文件中,我都有以下配置。

SSLEngine On
SSLProtocol -all +TLSv1.2
SSLCertificateFile /etc/ssl/certs/certfile.pem
SSLCertificateKeyFile /etc/ssl/private/certfile.pem
Run Code Online (Sandbox Code Playgroud)

ssl apache2 https tls

8
推荐指数
1
解决办法
2万
查看次数

如何在 Apache2 中启用 PHP 7.3

我按照https://idroot.us/install-php-7-3-ubuntu-18-04/ 中的说明安装 PHP 7.3,然后按照说明运行

a2enmod proxy_fcgi setenvif

a2enconf php7.3-fpm
Run Code Online (Sandbox Code Playgroud)

在 Apache2 中启用它。

systemctl status php7.3-fpm
Run Code Online (Sandbox Code Playgroud)

确认 php7.3 已安装并正在运行,我确实使用重新启动了 Apache2

systemctl restart apache2
Run Code Online (Sandbox Code Playgroud)

php -v报告PHP 7.3.6-1+ubuntu18.04.1+deb.sury.org+1 (cli) (build: May 31 2019 11:06:48) ( NTS )

但是,phpinfo();报告 PHP 7.2:PHP 版本 7.2.17-0ubuntu0.18.04.1

我错过了什么?任何指导将不胜感激,因为我对 Ubuntu 完全陌生。

谢谢

apache2 php7

8
推荐指数
2
解决办法
5万
查看次数

标签 统计

apache2 ×10

php ×5

server ×3

mysql ×2

11.04 ×1

18.04 ×1

https ×1

permissions ×1

php7 ×1

phpmyadmin ×1

ssh ×1

ssl ×1

tls ×1

virtualhost ×1

webserver ×1