【问题标题】:Configuring Notepad++ to run php on localhost?配置 Notepad++ 以在 localhost 上运行 php?
【发布时间】:2011-11-24 01:47:02
【问题描述】:

我正在尝试选择 Run->Launch With Firefox;在http://127.0.0.1:8080/currentfile.php 打开我当前在 Notepad++ 中查看的文件,但它只是打开到 Firefox 中的当前文件目录。我试图在 Notepad++ 目录中编辑快捷方式 xml 文件,我已经关闭了 Notepad++ 并使用常规记事本编辑 XML 文件,当我启动 Notepad++ 备份时,它不显示我输入的设置。如何编辑设置以加载 localhost 而不是 Firefox 中的文件目录?

【问题讨论】:

  • 请注意,您可能想接受您提出的 8 个问题中的一些。如果您不选择答案,您很可能不会得到答案。
  • 我不认为 N​​otepad++ 可以做到这一点。在浏览器中保持打开状态然后按刷新会很麻烦吗?
  • 抱歉,我是这个网站的新手,我该如何接受我提出的问题?仅供将来我问另一个问题时参考。顺便说一句,我感谢您的提醒,谢谢!
  • 这个问题的标题应该类似于“如何在 Firefox 中打开当前的 Notepad++ 文件”。投反对票

标签: php localhost notepad++


【解决方案1】:

两件事

  1. 您编辑了错误的文件,我猜您使用的是 windows vista/7,所以真正的首选项文件位于 C:\Users\user\AppData\Roaming\Notepad++

  2. 我不认为notepad++有一个只包含一半地址的变量

含义:现在使用的变量是 $(FULL_CURRENT_PATH) == file:///C:/server/htdocs/pages/example.php

所以你没有任何变量只包含这个 pages/example.php。

所以我认为这是不可能的

但在编辑后保持页面打开并刷新

【讨论】:

  • 成功了!谢谢!我记得不久前玩弄了 appdata 文件夹,但不知道它被用于这样的事情......谢谢!
  • <command name="Launch in Firefox" ctrl="yes" alt="yes" shift="yes" key="88">firefox "$(FULL_CURRENT_PATH)" </command>firefox "127.0.0.1:8080 $(FILE_NAME)" ;
  • 是的,因为正如我所说的 npp 没有半路径变量
【解决方案2】:

如果你将你的 PHP 文件直接保存到 WAMP 的 www 目录中(没有子文件夹),你可以通过选择“Run...”命令并粘贴到这一行来执行它:

firefox.exe "http://localhost/$(FILE_NAME)"

这不是很好,但它会帮助您快速调试。

【讨论】:

  • 对于 chrome.exe 和其他任何东西都一样,因为我确信对大多数人来说都很明显。
【解决方案3】:

这里有一个快速而肮脏的修复方法来运行 php 文件,即使它们位于文档根目录的子目录中。在快捷方式.xml 中:

<Command name="Launch in Firefox" Ctrl="yes" Alt="yes" Shift="yes" Key="88">firefox &quot;http://localhost/redirect.php?file=$(FULL_CURRENT_PATH)&quot;</Command>

然后在您的网络服务器文档根目录中创建文件“redirect.php”:

<?php
$root = $_SERVER['DOCUMENT_ROOT'];

$file = str_replace('\\', '/', $_GET['file']);
$file = str_replace($root, '', $file);

header("Location: http://localhost{$file}");

【讨论】:

  • 这看起来很酷,但是由于我不熟悉 XML 文件,也不熟悉如何从 notepadd++ 启动文件,所以我仍在尝试弄清楚如何将它实际付诸实施。跨度>
【解决方案4】:

我知道这是一个较老的问题,但是:

A. Gneady 的解决方案效果很好。但是,它可能需要在 Windows 上进行一些修改,以便在替换斜线方向之前替换 DOCUMENT_ROOT。否则,将不进行替换,并且 $file 将输出与原始路径和文件名相同的内容,但斜线相反。

由于我在多个浏览器中测试,我修改了所有相关的行 C:\Users[用户名]\AppData\Roaming\Notepad++\shortcuts.xml:

<Command name="Launch in Firefox" Ctrl="yes" Alt="yes" Shift="yes" Key="88">firefox &quot;http://localhost/redirect.php?file=$(FULL_CURRENT_PATH)&quot;</Command>
<Command name="Launch in IE" Ctrl="yes" Alt="yes" Shift="yes" Key="73">iexplore &quot;http://localhost/redirect.php?file=$(FULL_CURRENT_PATH)&quot;</Command>
<Command name="Launch in Chrome" Ctrl="yes" Alt="yes" Shift="yes" Key="82">chrome &quot;http://localhost/redirect.php?file=$(FULL_CURRENT_PATH)&quot;</Command>
<Command name="Launch in Safari" Ctrl="yes" Alt="yes" Shift="yes" Key="70">safari &quot;http://localhost/redirect.php?file=$(FULL_CURRENT_PATH)&quot;</Command>

然后在web根目录下创建“redirect.php”文件如下:

<?php 
$root = $_SERVER['DOCUMENT_ROOT'];
$file = $_GET['file'];
$file = str_replace($root, '', $file);
$file = str_replace('\\', '/', $file);

header("Location: http://localhost{$file}");

?>

【讨论】:

    【解决方案5】:

    被遗忘的标记/在本地主机之后

    <?php 
    $root = $_SERVER['DOCUMENT_ROOT'];
    $file = $_GET['file'];
    $file = str_replace($root, '', $file);
    $file = str_replace('\\', '/', $file);
    
    # Was forgotten mark /
    
    header("Location: http://localhost/{$file}"); 
    ?>
    

    【讨论】:

      【解决方案6】:

      这是对我有用的代码:

      <?php 
      $root = $_SERVER['DOCUMENT_ROOT'];
      $file = $_GET['file'];
      $file = str_replace($root, '', $file);
      $file = str_replace('\\', '/', $file);
      $file = str_replace('C:/wamp64/www/', '', $file); // Cause 'localhost' is equal to 'C:/wamp64/www/' in my case.
      header("Location: http://localhost/{$file}"); 
      ?>
      

      谢谢大家..

      【讨论】:

        【解决方案7】:

        如果您只是想在 Chrome 或其他设备中直接从 Notepad++ 运行 HTML 和/或 PHP,请添加:

        <Command name="Launch in Chrome FOLDER" Ctrl="yes" Alt="yes" Shift="yes" Key="82">chrome &quot;http://localhost/FOLDER/$(FILE_NAME)&quot;</Command>
        

        在 Notepad++ 的 shortcuts.xml 文件中(至少在 Windows 中)

        将“FOLDER”的两个实例更改为网络服务器根文件夹中的一个子文件夹。 XAMPP 中的根文件夹是 htdocs。当然,将“Chrome”更改为想要打开文件的浏览器。

        例如,我的一个是:

        <Command name="Launch in Chrome 7GENERALTEST" Ctrl="yes" Alt="yes" Shift="yes" Key="82">chrome &quot;http://localhost/7GENERALTEST/$(FILE_NAME)&quot;</Command>
            
        

        “7GENERALTEST”包含在开发中的 HTML 和 PHP 文件的子文件夹。

        然后可以为其他浏览器和/或文件夹(例如 Firefox 或文件夹“7GENERALTEST2”等)复制和修改上述内容。

        【讨论】:

          【解决方案8】:

          要解决此问题,只需将 Notepad++ 打开到您的网络服务器上的重定向文件。比如……

          shortcuts.xml 中的一行:

          <Command name="Launch in Chrome" Ctrl="yes" Alt="yes" Shift="yes" Key="88">
          chrome http://localhost/redirect.php?path=$(FULL_CURRENT_PATH)</Command>
          

          现在你的 Redirect.php 文件:

          if (!empty($_GET['path'])) {
          
              $path = str_replace($_SERVER['DOCUMENT_ROOT'], '', $_GET['path']);
              $redir = 'http://localhost' . $path;
              header("Location:$redir");   
          }
          

          现在,您从网络服务器上的任何目录运行的任何页面都将自动打开。 & 显然,您可以将 redirect.php 放置在您的本地主机网络服务器上的任何位置,如果这让您感到困扰,它不必位于您的根“htdocs”文件夹中。将其隐藏在配置目录或保存数据库链接文件或头/脚文件等的地方。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2011-10-25
            • 2022-07-01
            • 1970-01-01
            • 2017-08-29
            • 2019-11-08
            • 1970-01-01
            • 2014-09-11
            • 1970-01-01
            相关资源
            最近更新 更多