Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

423
Views
Subir un archivo a una máquina virtual en el servidor apache

Tengo un pequeño problema que sería de gran ayuda.

Tengo una función en laravel que captura ciertos datos y al final con $file->move ($virtual_machine_address, document) se guarda en la carpeta creada. Esto localmente funciona de maravilla. El código está referenciado desde subir archivos en laravel (API)

 public function uploadFile(Request $request){ /*Initializing variables in input*/ $input = $request->all(); /*rutas de carpeta*/ $ruta_server = DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR.'172.xx.xx.xxx'.DIRECTORY_SEPARATOR.'Prueba'.DIRECTORY_SEPARATOR.'DOCUMENTOS'.DIRECTORY_SEPARATOR; /*Enter if file exist*/ if($request->hasFile('file')){ /*Modification in the name and extension*/ $file = $request->file('file'); $filename = $file->getclientOriginalName(); $filename = pathinfo($filename, PATHINFO_FILENAME); $name_file = str_replace(" ", "_", $filename); $extension = $file->getClientOriginalExtension(); /*Redacción o revisión*/ if($input['posicion'] == 1){ $picture = 'Redaccion('.$input['version'].')' . '-' . $name_file . '.' . $extension; }else{ $picture = 'Revision('.$input['version'].')' . '-' . $name_file . '.' . $extension; } /*official root*/ $ruta_oficial = $ruta_server.$input['id_carpeta'].DIRECTORY_SEPARATOR; /*create and uploadfile*/ $file->move($ruta_oficial, $picture); return response()->json([ "ok" => true, "error" => false, "data" => $picture ]); }else{ return response()->json([ "ok" => false, "error" => true, "mensaje" => "Error Detectado" ]); } }

Creé un contenedor en docker que simula la configuración del servidor apache donde se subirá el proyecto y al probar mi función con postman no funciona. Enviando el error:

 Symfony\Component\HttpFoundation\File\Exception\FileException: Unable to create the "//172.xx.xx.xxx/Prueba/DOCUMENTOS/100-2021/" directory. in file /opt/data/vendor/symfony/http-foundation/File/File.php on line 125

Junto con 38 # errores más.

Versiones de mi proyecto: Laravel: 8.48.0 PHP: 8.0.7 Docker container: FROM php:8.0.7-apache (Linux) Servidor de archivos (172.xx.xx.xxx): Windows Virtual Server

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Este es mi DockerFile

 FROM php:8.0.7-apache RUN apt-get update # 1. paauetes dev RUN apt-get install -y \ git \ zip \ samba \ smbclient \ curl \ sudo \ unzip \ libpq-dev \ libzip-dev \ libicu-dev \ libbz2-dev \ libpng-dev \ libjpeg-dev \ libmcrypt-dev \ libreadline-dev \ libfreetype6-dev \ libsmbclient-dev \ g++ \ libaio1 wget && apt-get clean autoclean && apt-get autoremove --yes && rm -rf /var/lib/{apt,dpkg,cache,log}/ # 2. dir apache ENV APACHE_HOME /var/www/html # 3. mod_rewrite for URL rewrite and mod_headers for .htaccess extra headers like Access-Control-Allow-Origin- RUN a2enmod rewrite headers # 4. start with base php config, then add extensions #RUN mv "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini" RUN docker-php-ext-install \ gd\ bz2 \ intl \ iconv \ bcmath \ opcache \ calendar \ # mbstring \ # pdo_mysql \ zip # 5. composer COPY --from=composer:latest /usr/bin/composer /usr/bin/composer # ORACLE oci RUN mkdir /opt/oracle \ && cd /opt/oracle ADD http://git.xxx.xxx/bxxxx.xxxx/media/raw/master/IC/instantclient-basic-linux.x64-19.5.0.0.0dbru.zip /opt/oracle ADD http://git.xxx.xxx/bxxxx.xxxx/media/raw/master/IC/instantclient-sdk-linux.x64-19.5.0.0.0dbru.zip /opt/oracle # Install Oracle Instantclient RUN unzip /opt/oracle/instantclient-basic-linux.x64-19.5.0.0.0dbru.zip -d /opt/oracle \ && unzip /opt/oracle/instantclient-sdk-linux.x64-19.5.0.0.0dbru.zip -d /opt/oracle \ # && ln -s /opt/oracle/instantclient_19_5/libclntsh.so.19.1 /opt/oracle/instantclient_19_5/libclntsh.so \ && ln -s /opt/oracle/instantclient_19_5/libclntshcore.so.19.1 /opt/oracle/instantclient_19_5/libclntshcore.so \ # && ln -s /opt/oracle/instantclient_19_5/libocci.so.19.1 /opt/oracle/instantclient_19_5/libocci.so \ && rm -rf /opt/oracle/*.zip ENV LD_LIBRARY_PATH /opt/oracle/instantclient_19_5:${LD_LIBRARY_PATH} # Install Oracle extensions RUN echo 'instantclient,/opt/oracle/instantclient_19_5/' | pecl install oci8-3.0.1 \ && docker-php-ext-enable \ oci8 \ && docker-php-ext-configure pdo_oci --with-pdo-oci=instantclient,/opt/oracle/instantclient_19_5,19.5 \ && docker-php-ext-install \ pdo_oci RUN mkdir -p /opt/data/public && \ rm -r /var/www/html && \ ln -s /opt/data/public $APACHE_HOME WORKDIR $APACHE_HOME
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!