Назад | Перейти на главную страницу

wget не работает с доменом на локальном компьютере

В основном - у меня есть несколько скриптов PHP, которые нужно запускать как задания cron.

Допустим, необходимо запустить сценарий: http://admin.somedomain.com/cron_jobs/get_stats

Если я запускаю сценарий с локального компьютера, он выдает ошибку 404 Not Found.

Итак, я ввел следующее в / etc / hosts

XX.XX.XX.45    admin.somedomain.com

Теперь wget отлично работает с локального компьютера в этом домене. Однако, когда я перезапускаю Apache, этот домен больше не работает. Вот конфигурация этого сайта в / etc / apache2 / sites-available

NameVirtualHost XX.XX.XX.45:80

<VirtualHost XX.XX.XX.45:80>
    ServerName admin.somedomain.com
     DocumentRoot /var/www/admin.somedomain.com/
    <Directory "/var/www/admin.somedomain.com">
            allowoverride all
          Options Indexes
          order deny,allow
           allow from all
       </Directory>
    ErrorLog /var/log/apache2/admin.somedomain.com-error_log
    CustomLog /var/log/apache2/admin.somedomain.com-access_log combined

</VirtualHost>

Он просто переходит в конфигурацию сайта по умолчанию, показывающую «Это работает».

Если я уберу этот параметр в / etc / hosts и перезапущу apache, веб-сайт в этом домене снова будет работать нормально.

Может ли кто-нибудь указать мне здесь правильное направление? Спасибо

Пытаться wget --header="Host: admin.somedomain.com" http://localhost/cron_jobs/get_stats (Это одна строка.)

Есть ли причина, по которой вам нужно запускать скрипты через Apache, запускаемые HTTP-клиентом? А как насчет того, чтобы просто запустить их прямо из cron?

0 4 * * * /usr/bin/php /path/to/script

пытаться httpd -S это должно дать вам список всех настроенных виртуальных хостов, включая ваш. Также убедитесь, что ваш каталог "/var/www/admin.somedomain.com/" существует, а также просмотрите журналы и посмотрите, что они говорят ...