标签: plesk

Plesk 12.5 Nginx代理将SSL传递到不同端口上的Node应用程序

前言:尝试为Plesk安装JXCore的Node Extension,我无法让它工作.给我一些错误,他们的支持不是回复电子邮件......

[IP ADDRESS] =真实IP,example.com =真实域

无论如何,我有我的nodejs应用程序并运行SSL证书.如果我去https://example.com:3000,这是我用于Node的端口,可以正常工作.SSL证书加载所有绿色,一切都很好.

我正在使用Plesk 12.5,并且已经安装了Nginx..conf文件位于/var/www/vhosts/[domain]/conf/nginx.conf.

在顶部它说:

#DO NOT MODIFY THIS FILE BECAUSE IT WAS GENERATED AUTOMATICALLY,
#SO ALL YOUR CHANGES WILL BE LOST THE NEXT TIME THE FILE IS GENERATED.
Run Code Online (Sandbox Code Playgroud)

他们不是在开玩笑.对此文件进行任何更改几乎立即被覆盖.

这是整个文件内容:

server {
        listen [IP ADDRESS]:443 ssl;

    server_name example.com;
    server_name www.example.com;
    server_name ipv4.example.com;

    ssl_certificate             /usr/local/psa/var/certificates/cert-HREdQ9;
    ssl_certificate_key         /usr/local/psa/var/certificates/cert-HREdQ9;
    ssl_client_certificate      /usr/local/psa/var/certificates/cert-wpX6q1;

    client_max_body_size 128m;

    root "/var/www/vhosts/msgable.com/httpdocs";
    access_log "/var/www/vhosts/system/example.com/logs/proxy_access_ssl_log";
    error_log "/var/www/vhosts/system/example.com/logs/proxy_error_log";

    location / {
            proxy_pass https://[IP ADDRESS]:7081;
            proxy_set_header Host             $host;
            proxy_set_header X-Real-IP        $remote_addr;
            proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
            access_log …
Run Code Online (Sandbox Code Playgroud)

nginx plesk

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

ssh2_exec()不会用"cd"更改目录

我有一个ssh_exec()拒绝执行"cd"命令的问题.

如果我直接登录服务器并执行命令,它工作正常,所以我认为问题不在于我的命令.

我的代码如下:

$str = ssh2_exec($sshStream, 'cp /var/www/compressed.tar.gz /var/www/vhosts/demo-domain1.com/httpdocs/');
$errstr = ssh2_fetch_stream($str, SSH2_STREAM_STDERR);
stream_set_blocking($str, true);
stream_set_blocking($errstr, true);
echo "Output: " . stream_get_contents($str);
echo "Error: " . stream_get_contents($errstr);

$str = ssh2_exec($sshStream, 'cd /var/www/vhosts/demo-domain1.com/httpdocs/');
$errstr = ssh2_fetch_stream($str, SSH2_STREAM_STDERR);
stream_set_blocking($str, true);
stream_set_blocking($errstr, true);
echo "Output: " . stream_get_contents($str);
echo "Error: " . stream_get_contents($errstr);

$str = ssh2_exec($sshStream, 'tar xzf c-class.tar.gz');
$errstr = ssh2_fetch_stream($str, SSH2_STREAM_STDERR);
stream_set_blocking($str, true);
stream_set_blocking($errstr, true);
echo "Output: " . stream_get_contents($str);
echo "Error: " . stream_get_contents($errstr);
Run Code Online (Sandbox Code Playgroud)

我以root身份登录.

第一个命令正确运行并将文件复制到该位置.第二个命令不执行,但不输出错误.第三个命令显示错误(显然因为前一个cd命令不起作用).

我知道它没有改变dirs,因为当我执行"pwd"时,它返回说它仍在根目录中.

如前所述,如果我从shell运行命令,它们执行正常,所以我99.9%确定我的语法是正确的. …

php centos plesk

6
推荐指数
1
解决办法
5012
查看次数

Cron设置用于检索实时体育比分

我正在开发一个移动应用程序,显示英超足球比赛的现场比分.当游戏开始时,我想每30秒查询一次外部API以检索最新的分数.大多数游戏在开始3pm的一个星期六,但一些在开始12.45pm时,其他人1.30pm,2pm3pm在星期日和一些期间的最晚时间一周8pm.

我有一个表在我的数据库填充了所有固定装置的赛季,他们在开始的时间.

所以我猜我需要运行每一个cron 15分钟之间12.458pm(游戏永远不会启动这些时间之外),检查我的数据库,看是否有游戏开始.然后,如果有比赛的首发,另外的cron必须开始一个查询外部API每30秒在那场比赛的最新比分.这个cron会大约运行1 hour and 45 minutes.

实现这种cron设置的最佳方法是什么?我与在其上运行的Plesk软件在共享服务器上,并没有对服务器的SSH访问权限.

php apache cron crontab plesk

6
推荐指数
1
解决办法
790
查看次数

下载 webroot 之外的文件

好的,首先很抱歉,因为我意识到这是一个之前已经多次讨论过的主题 - 相信我,我知道,我已经阅读了之前的所有问题和答案,但仍然无法解决这个问题。

我有一个包含可下载文件的文件夹。出于安全目的,我将此文件放在 webroot 之外。然而,尽管我尽了最大的努力,我还是无法让我的 php 脚本下载文件。

我正在使用使用 Plesk 11 的 Linux VPS Apache 服务器。

(简化的)文件结构如下。该httpdocs文件夹是 webroot。该private/uploadedfiles文件夹是我要下载的位置。

-var
 - www
  - vhosts
   - mydomain.org.uk
    - httpdocs (webroot)
    - private
     - uploadedfiles
Run Code Online (Sandbox Code Playgroud)

我正在使用 jQuery ajax 调用将文件名传递给名为downloadscript.php. 该脚本位于httpdocswebroot 中。脚本如下:

<?php

$filename = $_POST['fbpath'];
$path = '/var/www/vhosts/mydomain.org.uk/private/uploadedfiles/' . $filename;

header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($path));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($path));
ob_clean();
flush();
readfile($path);
exit;

?> …
Run Code Online (Sandbox Code Playgroud)

php apache plesk

6
推荐指数
1
解决办法
6254
查看次数

共享Windows Plesk服务器上的CakePHP

我想知道是否有可能让CakePHP在共享的Windows Plesk服务器上运行

我已将CakePHP文件解压缩到/ httpdocs /文件夹,并按照CakePHP文档中的说明创建了一个web.config文件,但我似乎得到的只是一个"内部服务器错误".在查看基本的Cake配置页面之前是否还需要设置MySQL数据库,还是应该能够在没有配置任何数据库的情况下向我显示?

我已将我的站点配置为运行PHP 5.4.32(FastCGI).

报告的错误是:

PHP致命错误:您必须启用intl扩展才能使用CakePHP.在第38行的C:\ Inetpub\vhosts\example.com\httpdocs\config\bootstrap.php中

但是我的主机说他们尝试包含php_intl.dll所在目录的路径,但这还没有解决问题.

干杯,

皮特

cakephp plesk

6
推荐指数
1
解决办法
939
查看次数

Swiftmailer:无法连接TLS加密

我正在尝试使用Swiftmailer通过Symfony发送电子邮件.在生产服务器上,我收到一个错误:

[2016-08-20 11:59:37] app.ERROR: Exception occurred while flushing email queue: Unable to connect with TLS encryption [] []
Run Code Online (Sandbox Code Playgroud)

这是我在config.yml中的内容:

swiftmailer:
transport: smtp
host:      localhost
username:  info@derkvanderheide.nl
password:  testpw
spool:     { type: memory }
encryption: tls
port:       587
Run Code Online (Sandbox Code Playgroud)

Postfix是我的邮件服务器,它与Plesk一起安装.

这是我的postfix main.cf:

# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname …
Run Code Online (Sandbox Code Playgroud)

php plesk swiftmailer symfony postfix

6
推荐指数
1
解决办法
7393
查看次数

Laravel + Vue + Axios 问题与 POST 方法

我正在研究一个存储在 VPS 上的 Laravel 5.6 项目(我们称之为“生产”,尽管没有这样的创建环境)。

我们还结合了 Plesk 和 Github,手动将 Web 应用程序从我们的本地环境部署到服务器。

问题是,当我从API的加载一些数据,他们返回不允许方法(错误405 GET)......但他们实际上被注册为POSTapp.jsroutes/api.php

最棒的是,在我当地的环境中,它们可以完美运行。

这里有一些信息:

服务器:

  • Ubuntu 服务器 14.04
  • 阿帕奇/MySQL
  • PHP 7.2.5

我的电脑:

  • 带有 XAMPP 的 Windows 10
  • 阿帕奇/MySQL
  • PHP 7.2.2

每个浏览器中的开发者工具:

请求方法: GET
状态代码: 405 不允许的方法

这是其中的代码app.js

loadCountries: function loadCountries(total) {
    axios.post('/api/properties/countries/').then(function (response) {
        app.countries = response.data;
    });

    total = total <= this.countries.length ? total : this.countries.length;

    if (total) {
        var newArr = [];
        for (i = 0; …
Run Code Online (Sandbox Code Playgroud)

php plesk laravel vue.js axios

6
推荐指数
1
解决办法
3149
查看次数

当我部署 Blazor WebAssembly 时,API 停止响应

应用程序 = Blazor Web Assembly PWA 框架 6.0

API = Rest Api .netcore Framework 5.0

网址 = localtesting.mydomain.com

API 地址 = (localtesting.mydomain.com/api) 虚拟目录。

我创建了虚拟目录并将我的 API 上传到虚拟目录中。APi 按预期工作正常

然后我尝试在根文件夹上上传 Blazor WASM,但是当我这样做时,API 停止工作。因为 wasm 正在重定向 URL。

我认为这是由于 blazor 的后果规则由 web.config 处理

我尝试编辑 web.config 但无法让它工作

所以我尝试在 web.config 中添加一条规则,以不拦截 API 请求。

Blazor WebAssembly 未发布时的 api 响应 在 Plesk 上 这里没有人,只有 Awhen 上传 Blazor WebAssemblyPI 上传 Blazor WebAssembly 时

没有数据时

我尝试编辑 web.config 但仍然无法让它工作,因为 blazor 将所有请求重定向到 wwwroot 文件夹

以下是 web.config 文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <staticContent>
      <remove fileExtension=".blat" />
      <remove fileExtension=".dat" />
      <remove fileExtension=".dll" />
      <remove fileExtension=".json" />
      <remove fileExtension=".wasm" />
      <remove fileExtension=".woff" …
Run Code Online (Sandbox Code Playgroud)

c# iis plesk blazor blazor-webassembly

6
推荐指数
1
解决办法
602
查看次数

使用 web.config 通过 ASP.NET 启用 URL 重写

我是全新的ASP.NET,事实上我对它几乎一无所知,但不要绝望,我不是在寻找教程......我的一位同事想要ASP.NET在我们的网络服务器上运行一个应用程序。我们的网络服务器运行 Windows 2008 R2,带有 Plesk 11 和 IIS 7.5。

到目前为止,我在尝试启用时遇到了各种各样的问题ASP.NET,但是经过大量的摆弄之后,我设法使应用程序正常工作(在一定程度上)。

但是,为了使应用程序正常工作,我必须从我的web.config文件中删除以下几行:

<configSections>
    <sectionGroup name="system.webServer">
        <sectionGroup name="rewrite">
            <section name="rewriteMaps" overrideModeDefault="Allow" />
            <section name="rules" overrideModeDefault="Allow" />
        </sectionGroup>
    </sectionGroup>
</configSections>
Run Code Online (Sandbox Code Playgroud)

这是因为我收到了错误:

解析器错误消息:节或组名称“system.webServer”已定义。对此的更新可能只发生在定义它的配置级别。

我的文件夹结构是这样的:

website/
    TestApplication/
        web.config
    index.php
    web.config
Run Code Online (Sandbox Code Playgroud)

我为文件夹“TestApplication”创建了一个应用程序(并不是我真的知道这意味着什么),但这并没有任何区别。

我的印象是,如果你创建一个应用程序,web.config里面的目录不会继承任何父配置!这似乎不是这里的情况,因为我仍然收到错误。

我的问题是,对于上述情况,我的意思是什么?如何防止应用程序继承父目录配置,或者修复当前web.config文件以使用ASP.NET

需要注意的一件事是,我在 IIS 管理器和 Plesk 中都进行了更改,因为我无法在 Plesk 控制面板中找到特定内容,例如:为网站内的目录创建应用程序。我不认为这是这里问题的原因,但仍然值得一提。

更新

这是我的完整 web.config 文件(删除了我的所有规则之一,因为它们对文件没有影响):

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

<configSections>
    <sectionGroup name="system.webServer">
        <sectionGroup name="rewrite">
            <section name="rewriteMaps" overrideModeDefault="Allow" …
Run Code Online (Sandbox Code Playgroud)

asp.net iis web-config plesk web

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

Django 部署问题 w/Plesk“没有配置名为‘&lt;&gt;’的 WSGI 守护进程”

我之前已经成功地使用 apache 部署了各种 Django 站点,但我在一台安装了 Plesk 发行版的服务器上。因此,在进行设置时,我部署了一个非常基本的应用程序:

Django 应用程序的基本内容

被涂黑的权限都包含相同的用户名。

但是,error_logs此域的 apache显示以下错误:

2018-09-30 13:55:06 [wsgi:error] No WSGI daemon process called 'daemonuplordvexxos' has been configured: /var/www/vhosts/winduplordvexxos.com/api.winduplordvexxos.com/apiuplordvexxos/wsgi.py
Run Code Online (Sandbox Code Playgroud)

我的其他 apache 指令如下(我设置了 https):

其他 Apache 指令

谷歌搜索生命线No WSGI daemon process called 'daemonuplordvexxos' has been configured已经产生了零运气。

我的wsgi.py文件是 Django 2.1.1 安装的标准:

import os

from django.core.wsgi import get_wsgi_application

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'apiuplordvexxos.settings')

application = get_wsgi_application()
Run Code Online (Sandbox Code Playgroud)

我不确定这是否会帮助任何人诊断我的问题:

名称与之前的 WSGI 守护进程定义重复。

apache mod-wsgi wsgi plesk

5
推荐指数
0
解决办法
1593
查看次数