我正在使用 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工作?
我一直在尝试在启用 PDO 的 Ubuntu (16.04) 中安装 php (7.2)。我不需要 php 作为 apache 模块,因为我想使用 PHP 内置服务器(在 cli 模式下,如php -S localhost:80)。
所以,这就是我要做的:
sudo apt-get install php
sudo apt-get install php-mysql
sudo cp /usr/lib/php/7.2/php.ini-production.cli /etc/php/7.2/cli/php.ini
现在,在 php.ini 中取消注释:
extension=pdo_mysql
当我运行时仍然出现php -v错误:
PHP Warning: PHP Startup: Unable to load dynamic library 'pdo_mysql' (tried: /usr/lib/php/20170718/pdo_mysql (/usr/lib/php/20170718/pdo_mysql: cannot open shared object file: No such file or directory), /usr/lib/php/20170718/pdo_mysql.so (/usr/lib/php/20170718/pdo_mysql.so: undefined symbol: pdo_parse_params)) in Unknown on line 0
Run Code Online (Sandbox Code Playgroud)
php -m 输出:
[PHP Modules]
Core …Run Code Online (Sandbox Code Playgroud) 我在桌面 Ubuntu 安装上设置了一个 LAMP 服务器,用于测试 Web 应用程序。如何将它设置为仅在我告诉它时运行而不是在启动时运行?它不用作生产 Web 服务器,而是用于测试我编写的 PHP 脚本,然后再将它们推送到我的公共 Web 服务器。
最近将我的系统从 Karmic 升级到 Lucid。我相信这涉及更新 Apache 和 PHP。
现在我的服务器无法处理 PHP 文件,对它们的任何导航都会触发下载而不是解析。
PHP 模块仍然加载在 Apache mods-enabled
AddType application/x-httpd-php .php中,我的 httpd.conf 中也有。
Apache 访问或错误日志中没有有意义的消息,所以我很难过。
任何帮助,将不胜感激。谢谢。
我正在尝试设置新安装的 Ubuntu (12.04) 服务器,但无法通过 php-fpm 运行 PHP 文件。无论我做什么,我总是收到“拒绝访问”的消息。页面(纯文本,不是 html 或任何东西)。
安装的软件包:
nginx
nginx-common
nginx-full
php5
php5-cli
php5-common
php5-fpm
Run Code Online (Sandbox Code Playgroud)
配置详情:
PHP-FPM:
user = www-data
group = www-data
listen = /var/run/php5-fpm.sock
Run Code Online (Sandbox Code Playgroud)
nginx:
user www-data;
worker_processes 3;
events { worker_connections 1024; }
Run Code Online (Sandbox Code Playgroud)
默认/测试域:
server {
listen 80;
server_name localhost;
root /extra/htdocs/default;
index index.html index.php
access_log /extra/logs/default/access.log;
error_log /extra/logs/default/error.log;
location / {
try_files $uri $uri/ /index.html;
}
location ~ \.php
{
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED …Run Code Online (Sandbox Code Playgroud) 我有一个关于我的 Ubuntu 服务器上的 PHP 更新的查询。
我注意到https://launchpad.net/~ondrej/+archive/ubuntu/php 的php 版本似乎比官方 ubuntu PHP 包的更新速度快得多。
我的主要用例是在这些 Ubuntu 服务器上运行 PHP 生产环境,虽然使用官方的 Ubuntu 存储库通常是最好的选择,但实际上使用“ondrej ppa”会更安全,因为它们得到了错误修复和 CVE 补丁考虑到我的主要用例是 PHP 服务器,速度要快得多?
理想情况下,我想在 PHP 核心团队发布后立即更新http://us3.php.net/ChangeLog-7.php#7.0.14这样的东西,而不是等x 个月让 ubuntu 打包. 根据我收集的信息,建议的 PPA 的软件包维护者似乎也是为 Debian 制作官方软件包的人。
在这个用例中在生产中使用非官方的东西有什么实际的缺点?你不推荐吗?
基于评论中的答案和选定的解决方案。Canonical 将安全补丁应用于当前打包的 PHP 版本。因此,带有 Ubuntu 的官方软件包同样安全 - 但不会包含 PHP Core 团队添加的任何额外功能 - 这意味着它不会引入对许多用户来说很重要的错误/回归。
的/〜的Ondrej PPA可以被认为在这种情况下值得信赖; 许多用户依赖 PPA,频繁更新,并且维护者是 Debian 软件包的核心维护者之一。
在我的例子中,我选择使用这个 PPA。因为它允许我利用 PHP 7.1 附带的功能
感谢你的帮助。
我添加了 ondrej PPA。并尝试安装 php 7.2,但看起来 PPA 尚未更新。我的解决方法是什么?
如何更改 Ubuntu 20.04 上控制台中使用的 PHP 版本?我/etc/php文件夹里有所有版本,但不知道命令行版本的配置在哪里。