Выполните веб-сервер из любого каталога

Я пишу маленький веб-сайт, но я НЕ хочу выяснять, как установить и настроить полный стек LAMP для тестирования веб-сайта от моего ~/home каталог. Это будет абсолютно разрушительным и ненужным.

Все, что я хочу, должно иметь каталог, например. ~/home/Documents/Website и выполненный маленький веб-сервер от той папки как "домашняя" папка веб-сайта.

Я знаю, что Jekyll может сделать что-то подобное, но это только, кажется, работает с сайтами Ruby/Jekyll-based, которые это создает и настраивает.

Нет ли некоторая маленькая программа веб-сервера, которую я могу легко установить и затем просто выполнить очень просто?

Например, если я просто должен был выполнить что-то как, например. simple-server serve ~/home/Documents/Website из командной строки и затем перешли к, например. localhost:4000 или безотносительно протестировать сайт, который был бы прекрасен.

Если это уже возможно в Ubuntu, и я просто не знаю, как, сообщите мне.

9
задан 18 December 2018 в 05:00

4 ответа

Если у Вас есть php, установил Вас, может использовать php встроенный сервер для выполнения html/css и/или php файлов:

cd /path/to/your/app
php -S localhost:8000

, Как произведено Вы доберетесь:

Listening on localhost:8000
Document root is /path/to/your/app
10
ответ дан 23 November 2019 в 04:47

Установка локальный веб-сервер , это устанавливает эти ws команда, которую можно выполнить для обслуживания любого каталога в качестве статического сайта.

Этот клип демонстрирует статический хостинг плюс несколько выходных форматов журнала - dev и stats.

Static static log output

0
ответ дан 23 November 2019 в 04:47

Самым простым путем я знаю о:

cd /path/to/web-data
python3 -m http.server

вывод команды скажет Вам, какой порт он слушает на (значение по умолчанию 8000, я думаю). Выполненный python3 -m http.server --help для наблюдения, какие опции доступны.

Для получения дополнительной информации:

  1. документация Python относительно телефона http.server
  2. Простой сервер HTTP (это также упоминает python2 синтаксис)
11
ответ дан 23 November 2019 в 04:47

То, что Вы хотите, называют статический веб-сервер . Существует много способов достигнуть этого.

Это перечислило статические веб-серверы

Один простой путь: сохраните ниже сценария, поскольку static_server.js

   var http = require("http"),
     url = require("url"),
     path = require("path"),
     fs = require("fs")
     port = process.argv[2] || 8888;

 http.createServer(function(request, response) {

   var uri = url.parse(request.url).pathname
     , filename = path.join(process.cwd(), uri);

   path.exists(filename, function(exists) {
     if(!exists) {
       response.writeHead(404, {"Content-Type": "text/plain"});
       response.write("404 Not Found\n");
       response.end();
       return;
     }

     if (fs.statSync(filename).isDirectory()) filename += '/index.html';

     fs.readFile(filename, "binary", function(err, file) {
       if(err) {        
         response.writeHead(500, {"Content-Type": "text/plain"});
         response.write(err + "\n");
         response.end();
         return;
       }

       response.writeHead(200);
       response.write(file, "binary");
       response.end();
     });
   });
 }).listen(parseInt(port, 10));

 console.log("Static file server running at\n  => http://localhost:" + port + "/\nCTRL + C to shutdown");

помещает Ваш index.html в тот же каталог и работает

 node static_server.js
2
ответ дан 23 November 2019 в 04:47

Другие вопросы по тегам:

Похожие вопросы: