2014-09-16 34 views
6

tôi muốn cài đặt một máy ảo với âm đạo. Tôi đã sử dụng puphet để thiết lập và chạy máy ảo của mình. Sau khi tôi tải xuống các tệp của mình từ https://puphpet.com/ tôi chạy lệnh lang thang lên. hoạt động tốt và không có lỗi. Nhưng khi tôi đi đến máy chủ apache của tôi (ip: 192.168.56.101/). Nó nóiVagrant, tập tin Apache không tìm thấy

File not found 

config.yaml của tôi trông như thế này:

vagrantfile-local: 
vm: 
    box: puphpet/debian75-x64 
    box_url: puphpet/debian75-x64 
    hostname: '' 
    memory: '512' 
    cpus: '1' 
    chosen_provider: virtualbox 
    network: 
     private_network: 192.168.56.101 
     forwarded_port: 
      3gxDQCQAxfdF: 
       host: '7872' 
       guest: '22' 
    post_up_message: '' 
    provider: 
     virtualbox: 
      modifyvm: 
       natdnshostresolver1: on 
     vmware: 
      numvcpus: 1 
     parallels: 
      cpus: 1 
    provision: 
     puppet: 
      manifests_path: puphpet/puppet 
      manifest_file: site.pp 
      module_path: puphpet/puppet/modules 
      options: 
       - '--verbose' 
       - '--hiera_config /vagrant/puphpet/puppet/hiera.yaml' 
       - '--parser future' 
    synced_folder: 
     ncdRZBfrkcfO: 
      source: ./ 
      target: /var/www 
      sync_type: default 
      rsync: 
       args: 
        - '--verbose' 
        - '--archive' 
        - '-z' 
       exclude: 
        - .vagrant/ 
       auto: 'false' 
    usable_port_range: 
     start: 10200 
     stop: 10500 
ssh: 
    host: null 
    port: null 
    private_key_path: null 
    username: vagrant 
    guest_port: null 
    keep_alive: true 
    forward_agent: false 
    forward_x11: false 
    shell: 'bash -l' 
vagrant: 
    host: detect 
server: 
    install: '1' 
    packages: { } 
firewall: 
    install: '1' 
    rules: null 
apache: 
    install: '1' 
    settings: 
     user: www-data 
     group: www-data 
     default_vhost: true 
     manage_user: false 
     manage_group: false 
     sendfile: 0 
    modules: 
     - rewrite 
    vhosts: 
     aVIZQPIIn6i3: 
      servername: awesome.dev 
      serveraliases: 
       - www.awesome.dev 
      docroot: /var/www/awesome 
      port: '80' 
      setenv: 
       - 'APP_ENV dev' 
      override: 
       - All 
      options: 
       - Indexes 
       - FollowSymLinks 
       - MultiViews 
      engine: php 
      custom_fragment: '' 
      ssl_cert: '' 
      ssl_key: '' 
      ssl_chain: '' 
      ssl_certs_dir: '' 
    mod_pagespeed: 0 
nginx: 
    install: '0' 
    settings: 
     default_vhost: 1 
     proxy_buffer_size: 128k 
     proxy_buffers: '4 256k' 
    vhosts: 
     uwr7HyJ5WO1T: 
      server_name: awesome.dev 
      server_aliases: 
       - www.awesome.dev 
      www_root: /var/www/awesome 
      listen_port: '80' 
      location: \.php$ 
      index_files: 
       - index.html 
       - index.htm 
       - index.php 
      envvars: 
       - 'APP_ENV dev' 
      engine: php 
      ssl_cert: '' 
      ssl_key: '' 
php: 
    install: '1' 
    version: '56' 
    composer: '1' 
    composer_home: '' 
    modules: 
     php: 
      - cli 
      - intl 
      - mcrypt 
     pear: { } 
     pecl: 
      - pecl_http 
    ini: 
     display_errors: On 
     error_reporting: '-1' 
     session.save_path: /var/lib/php/session 
    timezone: America/Chicago 
    mod_php: 0 
hhvm: 
    install: '0' 
    nightly: 0 
    composer: '1' 
    composer_home: '' 
    settings: 
     host: 127.0.0.1 
     port: '9000' 
    ini: 
     display_errors: On 
     error_reporting: '-1' 
    timezone: null 
xdebug: 
    install: '0' 
    settings: 
     xdebug.default_enable: '1' 
     xdebug.remote_autostart: '0' 
     xdebug.remote_connect_back: '1' 
     xdebug.remote_enable: '1' 
     xdebug.remote_handler: dbgp 
     xdebug.remote_port: '9000' 
xhprof: 
    install: '0' 
drush: 
    install: '0' 
    version: 6.3.0 
ruby: 
    install: '1' 
    versions: 
     TSsZyQH2LHKq: 
      version: '' 
nodejs: 
    install: '1' 
    npm_packages: { } 
python: 
    install: '1' 
    packages: { } 
    versions: 
     YVfdTeUuv8wW: 
      version: '' 
mysql: 
    install: '1' 
    root_password: '123' 
    adminer: 0 
    databases: 
     99Rdxm92r7xO: 
      grant: 
       - ALL 
      name: dbname 
      host: localhost 
      user: dbuser 
      password: '123' 
      sql_file: '' 
postgresql: 
    install: '0' 
    settings: 
     root_password: '123' 
     user_group: postgres 
     encoding: UTF8 
     version: '9.3' 
    databases: { } 
    adminer: 0 
mariadb: 
    install: '0' 
    root_password: '123' 
    adminer: 0 
    databases: { } 
    version: '10.0' 
sqlite: 
    install: '0' 
    adminer: 0 
    databases: { } 
mongodb: 
    install: '0' 
    settings: 
     auth: 1 
     port: '27017' 
    databases: { } 
redis: 
    install: '0' 
    settings: 
     conf_port: '6379' 
mailcatcher: 
    install: '0' 
    settings: 
     smtp_ip: 0.0.0.0 
     smtp_port: 1025 
     http_ip: 0.0.0.0 
     http_port: '1080' 
     mailcatcher_path: /usr/local/rvm/wrappers/default 
     from_email_method: inline 
beanstalkd: 
    install: '0' 
    settings: 
     listenaddress: 0.0.0.0 
     listenport: '13000' 
     maxjobsize: '65535' 
     maxconnections: '1024' 
     binlogdir: /var/lib/beanstalkd/binlog 
     binlogfsync: null 
     binlogsize: '10485760' 
    beanstalk_console: 0 
    binlogdir: /var/lib/beanstalkd/binlog 
rabbitmq: 
    install: '0' 
    settings: 
     port: '5672' 
elastic_search: 
    install: '0' 
    settings: 
     java_install: true 
     autoupgrade: true 
+0

Có vẻ như bạn có docroot của mình được trỏ tới/var/www/awesome/nhưng âm hộ của bạn được chia sẻ với/var/www /. Bạn có tệp của mình trong thư mục/awesome/subdirectory trên máy cục bộ của mình không? –

Trả lời

2

Tôi chỉ cần stumbled về vấn đề này quá trong khi thiết lập âm đạo.

tôi tìm thấy trong các bản ghi của tôi rằng vấn đề này là fcgi vì vậy tôi nhận thấy dòng này trong file vhost tạo ra bởi lang thang:

ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www//$1 

thay đổi nó để:

ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/awesome/$1 

nó nên làm việc ngay bây giờ. Bây giờ vấn đề là bạn phải chỉnh sửa nó mỗi khi bạn sử dụng vagrant up

Tôi cũng có giải pháp cho điều này, có thể không phải là giải pháp tốt nhất, nhưng nó hoạt động và tôi sẽ sử dụng nó trừ khi ai đó đưa ra giải pháp tốt hơn .

thay đổi phần vhosts của bạn trong config.yaml một cái gì đó như thế này:

vhosts: 
    [your hash] 
     server_name: awesome.dev 
     server_aliases: 
      - www.awesome.dev 
     docroot: /var/www/ 
     port: '80' 
     setenv: 
      - 'APP_ENV dev' 
     directories: 
      provider: directory 
      path: /var/www/awesome/ 
      allow_override: 
       - All 
      options: 
       - Indexes 
       - FollowSymLinks 
       - MultiViews 
     engine: php 
     custom_fragment: '' 
     ssl: '0' 
     ssl_cert: '' 
     ssl_key: '' 
     ssl_chain: '' 
     ssl_certs_dir: '' 

Trong puphpet tìm kiếm thư mục của bạn cho tập tin này: puppet/modules/puphpet/templates/apache/custom_fragments.erb và thay đổi nội dung của nó:

<%= @vhost['custom_fragment'] %> 
<% if [email protected]_mod_php %> 
    <% if @vhost.has_key?('engine') %> 
    <% if @vhost['engine'] == 'php' %> 
     <% if @vhost.has_key?('directories') %> 
     <% if @vhost['directories'].has_key?('path') %> 
      ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://<%= @fcgi_string %><%= @vhost['directories']['path'] %>$1 
     <% else %> 
      ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://<%= @fcgi_string %><%= @vhost['docroot'] %>/$1 
     <% end %> 
     <% else %> 
     ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://<%= @fcgi_string %><%= @vhost['docroot'] %>/$1 
     <% end %> 
    <% end %> 
    <% end %> 
<% end %> 

Sau đó, tôi đã làm vagrant destroyvagrant up và nó hoạt động.

0

Bạn có thể kiểm tra thư mục gốc tài liệu của mình. Tôi nghĩ lúc đầu nó là /var/www/html nhưng không phải, nó là /var/www/default.

Hãy thử thêm một index.html trên /var/www/default/ thư mục. Sau đó, chạy lại http://192.168.56.101.

Các vấn đề liên quan