AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[drupal](server)

Martin Hope
Arild
Asked: 2021-12-15 07:06:13 +0800 CST

反向代理后面的子目录中的 Drupal

  • 0

在我面向公众的主机上,Apache 充当非公共主机的反向代理,其中 Drupal 9 实例在 Web 根目录下进行符号链接。Drupal 回答请求,但它输出包含符号链接名称的任何本地链接。显然是因为 PHP 请求变量$_SERVER['SCRIPT_NAME']包含它。

我如何告诉 Drupal 它的“实际”基本路径?

细节

公共主机配置:

<Location "/">
  ProxyPreserveHost on
  ProxyPassReverse "https://otherserver/webb/"
</Location>

在 上otherserver,我的域example.com是一个虚拟主机,其根目录位于/var/www/sites/example.com/html. 有这个符号链接webb,指向 Drupal 位置:

/var/www/sites/example.com/html/webb -> /var/www/sites/example.com/html/drupal8/web/

Drupal 会响应,但在响应 HTML 中,应该指向的链接是指向/about,/webb/about资产等也是如此。

如果我回应$_SERVER['SCRIPT_NAME'],我得到/webb/index.php。

php drupal reverse-proxy apache-2.4
  • 1 个回答
  • 146 Views
Martin Hope
Germano Carella
Asked: 2021-01-24 10:04:47 +0800 CST

nginx:如何在没有虚拟主机的情况下为同一域名上的多个站点提供服务?

  • 0

我是 nginx 的新手。我阅读了一些文档来安装它并使用 drupal 8 对其进行配置。

我的服务器安装在 linode 上。我通过IP地址访问,而不是虚拟主机。

我的 drupal 位于 var/www/html/d8/web。

因此,要访问我的 drupal 站点,我键入ip-address/d8/web.

如果root /var/www/html/d8/web在服务器默认文件中,它运行良好。这样我就无法访问服务器中的其他网站,每次我必须更改默认文件中的根目录。

我试过了

location (d8/web/ {
 try_files $uri /index.php?$query_string
} 

但是,如果 root 是其他目录,Nginxindex.php会在该目录中提供服务。

问题是我无法设置服务器名称,因为我使用的是 IP 地址而不是虚拟主机。我从我的 Windows 电脑访问 Linode。

一些想法或建议?

drupal php-fpm linode
  • 1 个回答
  • 152 Views
Martin Hope
Rafael Lourenço
Asked: 2017-01-13 10:30:54 +0800 CST

NGINX + Drupal 安装在 Linux 服务器的子文件夹中

  • 2

我正在尝试像这样配置服务器具有以下可访问地址:

domain.com/webmail (webmail app)
domain.com/app (node.js app)
domain.com/mailadmin (mail administration app)
domain.com/site (drupal website)

我的根目录是/var/www

其中有以下目录:

/var/www/webmail
/var/www/app
/var/www/postfixadmin
/var/www/site

我尝试了几种配置,但都没有工作(有些工作部分,显示主页或显示所有页面但没有任何 CSS 样式)

干杯

linux web-server drupal nginx
  • 1 个回答
  • 2171 Views
Martin Hope
undersound
Asked: 2014-11-29 00:54:43 +0800 CST

确定可能成功的探测是否成功利用?

  • 3

日志观察报告输出以下消息。

A total of 1 possible successful probes were detected (the following URLs
contain strings that match one or more of a listing of strings that
indicate a possible exploit):

/?_SERVER[DOCUMENT_ROOT]=../../../../../../../../../../../etc/passwd%00 HTTP Response 200

我知道这个匹配是基于来自 Logwatch 的预定义字符串列表,并且它是一个可能的漏洞,但我不确定如何进一步调查以确定它不是一个。

  1. 只需在浏览器中访问此 url 并检查是否没有输出私人信息或是否有其他方法/需要检查的地方就足够了吗?

  2. HTTP 响应 200 是否意味着它到达了 /etc/passwd 目录?

drupal
  • 1 个回答
  • 1418 Views
Martin Hope
sgtbeano
Asked: 2012-12-19 02:08:01 +0800 CST

Windows Server 2008 上带有 Apache 的 Drupal“站点”文件夹的别名[重复]

  • 0
这个问题在这里已经有了答案:
为什么不使用 WAMP 堆栈? (5 个答案)
7 年前关闭。

我不得不将许多站点从 LAMP 堆栈移动到 WAMP 堆栈,由 Zend 提供,我遇到了一个问题。我们的架构是许多负载平衡的 Web 服务器,它们有自己的本地 Web 应用程序驱动器,这些驱动器与作为主副本执行的服务器保持同步。然后,我们的 pillar san 向所有 Web 服务器提供了一个单独的 DFS 共享。通常,在我们的 LAMP 集群下安装的 Drupal 将在每个服务器的本地 HTDOCS 安装中安装主 Drupal Web 应用程序,然后将 Drupal 中的 SITES 目录符号链接到 DFS 或 NFS 共享,以便有一个通用的 FILES 和 TMP 目录.

我遇到的问题是,在 Win Server 2008 上似乎没有等效的符号链接,快捷方式末尾有一个 .ink 使 Apache 将它们视为一个不同的文件。所以我试过像这样在 vhost 文件中使用别名调用;

<Location /drupal-626/sites>
    Order deny, allow
    Allow from all
</Location>

别名 /drupal-626/sites “Z:\Path to alternate sites directory”

这个测试的根是;

http://main-domain-url/drupal-626/

不幸的是,这不起作用,所以我想知道你们中是否有人有可行的解决方案?

非常感谢您花时间阅读本文。

drupal
  • 1 个回答
  • 157 Views
Martin Hope
Gilles Grandguillaume
Asked: 2012-06-27 15:50:19 +0800 CST

Nginx 子目录 Drupal + 其他应用程序

  • 2

我有一个 drupal 应用程序和 2 个用 php 编写的其他应用程序,我想为 drupal 使用重写 uri,并将 drupal 放在虚拟根目录中,另一个按名称放置……并为每个应用程序的 img 使用服务器缓存。

前任 :

  • xxx.com 或 xxx.com/ --> /var/www/xxx.com/drupal/
  • xxx.com/app1 或 xxx.com/app1/ ----> /var/www/xxx.com/app1/
  • xxx.com/app2 或 xxx.com/app2/ ----> /var/www/xxx.com/app2/

我已经测试过:别名、每个位置的 root、条件 $request_uri、单独的配置...并且总是一个错误:img 路径、php 路径、所有应用程序或 drupal 之一的 404

所以我真的迷路了......

这是一个测试(也许是一些好东西):

    # enforce www
if ($host !~* ^(www)) {
    rewrite ^/(.*)$ $scheme://www.$host/$1 permanent;
}

location / {
    root   /var/www/gplaza.cl/Drupal;
    index  index.php index.html;

    if (!-f $request_filename) {
        rewrite  ^(.*)$  /index.php?q=$1  last;
        break;
    }

    if (!-d $request_filename) {
        rewrite  ^(.*)$  /index.php?q=$1  last;
        break;
    }
}

location /app1/ {
    alias /var/www/gplaza.cl/app1/;   
    index index.php;
}

location /app2/ {
    alias /var/www/gplaza.cl/app2/;   
    index index.php;
}

location ~ \.php$ {
    fastcgi_pass   127.0.0.1:9000;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_FILENAME /var/www/xxx.com$fastcgi_script_name;
}

location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico)$ {

    set $static_content /var/www/xxx.com/Drupal;

    if ($request_uri ~ ^/app1) {
        set $static_content /var/www/xxx.com/app1;
    }
    if ($request_uri ~ ^/app2) {
        set $static_content /var/www/gplaza.cl/app2;
    }

    expires     30d;
    access_log  off;
    root $static_content;
}
thank a lot if anybody can help me :)
php drupal nginx
  • 1 个回答
  • 2438 Views
Martin Hope
Andy Shinn
Asked: 2012-06-17 12:08:26 +0800 CST

即使启用了所有错误报告,PHP 仍显示空白页面

  • 1

我正在尝试调试 Drupal 应用程序中的损坏页面,并且很难让 PHP 吐出任何有用的东西。我有以下设置:

error_reporting = E_ALL
display_errors = On
display_startup_errors = On
log_errors = On
error_log = /var/log/php/php_error.log

我有一个显示 phpinfo() 的文件,它确认这些变量已针对环境正确设置。我已将 memory_limit 增加到 256M(这应该绰绰有余)。然而,我得到的唯一指示是 apache 访问日志中的状态 500 代码和来自 PHP 的空白页面。

Apache 虚拟主机将 LogLevel 设置为调试,错误日志仅输出:

[Sat Jun 16 20:03:03 2012] [debug] mod_deflate.c(615): [client 173.8.175.217] Zlib: Compressed 0 to 2 : URL /index.php, referer: http://ec2-174-129-192-237.compute-1.amazonaws.com/admin/reports/updates
[Sat Jun 16 20:03:03 2012] [error] [client 173.8.175.217] File does not exist: /var/www/favicon.ico
[Sat Jun 16 20:03:03 2012] [debug] mod_deflate.c(615): [client 173.8.175.217] Zlib: Compressed 42 to 44 : URL /favicon.ico

PHP 错误日志根本不输出任何内容。内核和系统日志显示与 Apache 或 PHP 无关。我还尝试安装 suphp 并检查其日志以确认用户正在正确执行:

[Sat Jun 16 20:02:59 2012] [info] Executing "/var/www/index.php" as UID 1000, GID 1000
[Sat Jun 16 20:05:03 2012] [info] Executing "/var/www/index.php" as UID 1000, GID 1000

这是在具有以下 PHP 模块的 Ubuntu 12.04 x86_64 上:

ii  php5                             5.3.10-1ubuntu3.1          server-side, HTML-embedded scripting language (metapackage)
ii  php5-cgi                         5.3.10-1ubuntu3.1          server-side, HTML-embedded scripting language (CGI binary)
ii  php5-cli                         5.3.10-1ubuntu3.1          command-line interpreter for the php5 scripting language
ii  php5-common                      5.3.10-1ubuntu3.1          Common files for packages built from the php5 source
ii  php5-curl                        5.3.10-1ubuntu3.1          CURL module for php5
ii  php5-gd                          5.3.10-1ubuntu3.1          GD module for php5
ii  php5-mysql                       5.3.10-1ubuntu3.1          MySQL module for php5

那么,我在这里错过了什么?为什么没有报错?

ubuntu php apache-2.2 drupal 500-error
  • 1 个回答
  • 8277 Views
Martin Hope
drcelus
Asked: 2012-05-23 07:04:21 +0800 CST

Gentoo 在创建新文件时忽略了 umask

  • 0

我有一台运行 Gentoo 并托管 drupal 安装的服务器。每当执行 Drupal 更新时,更新模块的目录权限都会从755变为744,从而阻止应用程序访问文件。umask 在 /etc/profile 下定义为 022,Apache 服务器在用户和组nobody下运行。

我相信这与 drupal 安装无关,因为如果我以root身份创建目录,也会发生同样的情况,它是使用 744 权限创建的,因为umask是 022 不应该将它创建为 755 吗?

为什么umask 被忽略,我如何告诉服务器创建权限为 755 的目录?

linux drupal file-permissions gentoo umask
  • 1 个回答
  • 853 Views
Martin Hope
Reid
Asked: 2012-05-09 13:57:31 +0800 CST

Drupal 和 MediaTemple 的 MySQL 错误

  • 2

我一直在 drupal 7.14 和 MediaTemple 之间遇到间歇性问题。具体来说,我收到此错误:

PDOException: SQLSTATE[HY000]: 一般错误: 1205 超出锁定等待超时;尝试重新启动事务:SELECT revision.order_number AS order_number, revision.revision_id AS revision_id, revision.revision_uid AS revision_uid, revision.mail AS mail, revision.status AS status, revision.log AS log, revision.revision_timestamp AS revision_timestamp, revision.revision_hostname AS revision_hostname, revision.data AS data, base.order_id AS order_id, base.type AS type, base.uid AS uid, base.created AS created, base.changed AS changed, base.hostname AS hostname FROM {commerce_order} base INNER加入 {commerce_order_revision} revision ON revision.revision_id = base.revision_id WHERE (base.order_id IN (:db_condition_placeholder_0)) 进行更新;DrupalDefaultEntityController 中的数组([:db_condition_placeholder_0] => 75)->

我被告知我的 MT 将表的类型更改为 MyISAM,并且他们和 drupal 之间存在问题。(请参阅此处的评论 #23 )。这并没有解决我的问题。我有一个网格容器,报告和配置如下。具体来说,我担心 MySQL 报告的第 39 行。我该怎么做才能解决这个问题?

MySQL 报告

  1 MySQL 5.1.26-rc-5.1.26r  uptime 0 0:9:1         Tue May  8 14:50:04 2012
  2
  3 __ Key _________________________________________________________________
  4 Buffer used         0 of  24.00M  %Used:   0.00
  5   Current       4.49M            %Usage:  18.71
  6 Write hit       0.00%
  7 Read hit        0.00%
  8
  9 __ Questions ___________________________________________________________
 10 Total              23     0.0/s
 11   Com_             17     0.0/s  %Total:  73.91
 12   COM_QUIT         12     0.0/s           52.17
 13   -Unknown          9     0.0/s           39.13
 14   DMS               3     0.0/s           13.04
 15 Slow                0       0/s            0.00  %DMS:   0.00
 16 DMS                 3     0.0/s           13.04
 17   SELECT            3     0.0/s           13.04        100.00
 18   REPLACE           0       0/s            0.00          0.00
 19   DELETE            0       0/s            0.00          0.00
 20   INSERT            0       0/s            0.00          0.00
 21   UPDATE            0       0/s            0.00          0.00
 22 Com_               17     0.0/s           73.91
 23   show_status       9     0.0/s           39.13
 24   show_variab       3     0.0/s           13.04
 25   admin_comma       2     0.0/s            8.70
 26
 27 __ SELECT and Sort _____________________________________________________
 28 Scan                6     0.0/s %SELECT: 200.00
 29 Range               0       0/s            0.00
 30 Full join           0       0/s            0.00
 31 Range check         0       0/s            0.00
 32 Full rng join       0       0/s            0.00
 33 Sort scan           0       0/s
 34 Sort range          0       0/s
 35 Sort mrg pass       0       0/s
 36
 37 __ Query Cache _________________________________________________________
 38 Memory usage   17.07k of  12.00M  %Used:   0.14
 39 Block Fragmnt 100.00%
 40 Hits                0       0/s
 41 Inserts             1     0.0/s
 42 Insrt:Prune       1:1       0/s
 43 Hit:Insert     0.00:1
 44
 45 __ Table Locks _________________________________________________________
 46 Waited              0       0/s  %Total:   0.00
 47 Immediate          19     0.0/s
 48
 49 __ Tables ______________________________________________________________
 50 Open                8 of 1024    %Cache:   0.78
 51 Opened             15     0.0/s
 52
 53 __ Connections _________________________________________________________
 54 Max used            1 of   60      %Max:   1.67
 55 Total              14     0.0/s
 56
 57 __ Created Temp ________________________________________________________
 58 Disk table          2     0.0/s
 59 Table               5     0.0/s
 60 File                5     0.0/s
 61
 62 __ Threads _____________________________________________________________
 63 Running             1 of    1
 64 Cached              0 of    4      %Hit:  92.86
 65 Created             1     0.0/s
 66 Slow                0       0/s
 67
 68 __ Aborted _____________________________________________________________
 69 Clients             0       0/s
 70 Connects            0       0/s
 71
 72 __ Bytes _______________________________________________________________
 73 Sent           18.31k    33.8/s
 74 Received        1.49k     2.8/s

我的 SQL 配置

#
# Base Container
#

[mysqld_safe]
socket      = /var/run/mysqld/mysqld.sock
nice        = 0

[mysqld]
max_heap_table_size = 8M
skip-name-resolve
open_files_limit = 8000

#
# * Basic Settings
#
user        = mysql
pid-file    = /var/run/mysqld/mysqld.pid
socket      = /var/run/mysqld/mysqld.sock
port        = 3306
basedir     = /usr
datadir     = /var/lib/mysql
tmpdir      = /tmp
language    = /usr/share/mysql/english
skip-external-locking
bind-address = 0.0.0.0

# For compatibility 
old_passwords   = 1

back_log=20
max_connections=60

# due to mysql internally considering connections from 'user@host1' as a separate user from 'user@host2',  max_user_connections is largely irrelevant in a clustered situation
max_user_connections=16
max_connect_errors=100000


key_buffer_size=24M
max_heap_table_size=4M
read_buffer_size=128K
read_rnd_buffer_size=128K
sort_buffer_size=256K
table_cache=1024
thread_cache_size=4
tmp_table_size=4M
join_buffer_size=4M
wait_timeout=60
thread_concurrency=4
innodb_file_per_table

max_allowed_packet  = 16M
thread_stack        = 128K

# query cache
query_cache_limit   = 1048576
query_cache_size        = 12M
query_cache_type        = 1

# slow query log
log-slow-queries    = /var/log/mysql/mysql-slow.log
long_query_time = 1

[mysqldump]
quick
quote-names
max_allowed_packet  = 16M

[mysql]
no-auto-rehash

[isamchk]
key_buffer      = 16M

[client]
port        = 3306
socket      = /var/run/mysqld/mysqld.sock
mysql php drupal mediatemple
  • 1 个回答
  • 1271 Views
Martin Hope
Mikael
Asked: 2012-05-08 12:33:35 +0800 CST

Drupal Commons 将 sendmail 与 Gmail SMTP 智能主机结合使用:帐户因滥用而被暂停

  • 0

我有一个带有两个 Drupal 站点的 Linux VPS,其中一个使用 Drupal Commons。两个安装都被告知通过 sendmail 发送邮件,而 sendmail 又被配置为将邮件中继到 Gmail SMTP 服务器(通过智能主机指令)。两个不同的帐户,在两个不同的(免费)Google Apps 域上用于发送。

非 Commons 服务器用于向大量收件人(>350)发送时事通讯,但我从未遇到过此帐户被暂停的问题。Commons 服务器设置了通知规则,用于向订阅特定内容的每个人、群组或用户等发送电子邮件。但是,这些通知的体积要小得多,一批可能有 20-30 条,并且该站点的访问量并不大。然而,谷歌每隔几天就会“因滥用”而暂停我在该域的用户。

有没有人遇到过类似的事情,并希望找到解决方法?我已确保此时已在我的(两个)主机上设置 SPF 和 DKIM 记录,但它似乎没有帮助。

我是否可以在不通过 Google 的 SMTP 服务的情况下从我的两个域发送邮件的任何其他建议方法?对于 Commons 站点,它只是一个通知程序,我不需要接受回邮。

感谢您提供的任何帮助,并乐于发布我的任何配置(只是不确定哪种配置最合适)。

smtp sendmail drupal gmail suspend
  • 1 个回答
  • 1026 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve